{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"machine_shape":"hm","toc_visible":true,"gpuType":"A100","authorship_tag":"ABX9TyNVjPCS6gwMFJlGuWc4H2St"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"},"widgets":{"application/vnd.jupyter.widget-state+json":{"07b2d0624ca54c26959c9fffc8da37d3":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_0df33a26ef494bc8b5a97855af865d51","IPY_MODEL_315751c486bf4310832330cf83f743a9","IPY_MODEL_c6371d81e1544b38938730f6e7e58c62"],"layout":"IPY_MODEL_7116e2a9e4d74b63a8f9485358be9c70"}},"0df33a26ef494bc8b5a97855af865d51":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_3b138daaf42941e388c0069e437a5231","placeholder":"​","style":"IPY_MODEL_4de915655a97452c941d1c1599d9d70e","value":"README.md: 100%"}},"315751c486bf4310832330cf83f743a9":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_feea4a62e28644db9352c111ba95c141","max":1390,"min":0,"orientation":"horizontal","style":"IPY_MODEL_97f5155b49684aeaae5b903a2e3b96c0","value":1390}},"c6371d81e1544b38938730f6e7e58c62":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_856b2d507f7e49b980fbb52cd8c4a603","placeholder":"​","style":"IPY_MODEL_73333eb78c53466883727322c6115908","value":" 1.39k/1.39k [00:00&lt;00:00, 113kB/s]"}},"7116e2a9e4d74b63a8f9485358be9c70":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"3b138daaf42941e388c0069e437a5231":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"4de915655a97452c941d1c1599d9d70e":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"feea4a62e28644db9352c111ba95c141":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"97f5155b49684aeaae5b903a2e3b96c0":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"856b2d507f7e49b980fbb52cd8c4a603":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"73333eb78c53466883727322c6115908":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"354bd5e8413d46cfa9ae78b5648fb436":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_d380540a1a5d433a86d8361b77fda56f","IPY_MODEL_7b2a8b68667c4934be028d4cf7b6956d","IPY_MODEL_4061becdc986431bb470a474d7f0d9e2"],"layout":"IPY_MODEL_f3549f709ad747de99c82985384ebf9a"}},"d380540a1a5d433a86d8361b77fda56f":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_d528afd3c6574a778f7016197747e3b5","placeholder":"​","style":"IPY_MODEL_2c1eb0bce9cd4218b6fba3b5febfc910","value":"sent_train.csv: 100%"}},"7b2a8b68667c4934be028d4cf7b6956d":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_46531a3d409248b1b43a01b1fd0ceb6e","max":858645,"min":0,"orientation":"horizontal","style":"IPY_MODEL_40e9b365dcd940caa1b9fb1e2f37b5dd","value":858645}},"4061becdc986431bb470a474d7f0d9e2":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_9c45f7febf9b432da3392900ae23f198","placeholder":"​","style":"IPY_MODEL_1a2540b48f0a402c96a2560bc1ac4165","value":" 859k/859k [00:00&lt;00:00, 1.70MB/s]"}},"f3549f709ad747de99c82985384ebf9a":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"d528afd3c6574a778f7016197747e3b5":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"2c1eb0bce9cd4218b6fba3b5febfc910":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"46531a3d409248b1b43a01b1fd0ceb6e":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"40e9b365dcd940caa1b9fb1e2f37b5dd":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"9c45f7febf9b432da3392900ae23f198":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"1a2540b48f0a402c96a2560bc1ac4165":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"b7de3576f65344eaaf7d5a08db85588a":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_d932cad0586947509ab3fde467ba7357","IPY_MODEL_1ac87a168d7c4ed08994f681d59bf3e4","IPY_MODEL_6d369cc9fd2243d293d7e2a5ff4b2db2"],"layout":"IPY_MODEL_968d6e47a31949478c7e21b4bed7e029"}},"d932cad0586947509ab3fde467ba7357":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_7dd9abbc09f047729087cf6b32e7fdbe","placeholder":"​","style":"IPY_MODEL_add35e421a114d7781503be9af48d282","value":"sent_valid.csv: 100%"}},"1ac87a168d7c4ed08994f681d59bf3e4":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_dca076fd97504098b50decb0ea6a8c6e","max":217378,"min":0,"orientation":"horizontal","style":"IPY_MODEL_49faea6373f14d67936171644659efd0","value":217378}},"6d369cc9fd2243d293d7e2a5ff4b2db2":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_0c821a883f0c44078db3064d9d7d6ad9","placeholder":"​","style":"IPY_MODEL_222403e6f19349f298df755a09560daa","value":" 217k/217k [00:00&lt;00:00, 874kB/s]"}},"968d6e47a31949478c7e21b4bed7e029":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"7dd9abbc09f047729087cf6b32e7fdbe":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"add35e421a114d7781503be9af48d282":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"dca076fd97504098b50decb0ea6a8c6e":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"49faea6373f14d67936171644659efd0":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"0c821a883f0c44078db3064d9d7d6ad9":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"222403e6f19349f298df755a09560daa":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"ff8e0e5c79be4c19937e49cc2ccbbc21":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_1dcd9f5bc2ab496194b9e5838228caa6","IPY_MODEL_0ec00d34e953436eaf8c8f32af88a329","IPY_MODEL_ef9fa8843cf34267b7d5dcbf8869f6c8"],"layout":"IPY_MODEL_91c7201b53124f03954572cbe52db21d"}},"1dcd9f5bc2ab496194b9e5838228caa6":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_0de04a84dd644332ac1547d6540c9007","placeholder":"​","style":"IPY_MODEL_b799ff81e69741b6897d36285b429466","value":"Generating train split: 100%"}},"0ec00d34e953436eaf8c8f32af88a329":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_a4a08d6bf329484cb296411b2e70ca67","max":9543,"min":0,"orientation":"horizontal","style":"IPY_MODEL_2010f85089e640e98dfbb7585eb99bf6","value":9543}},"ef9fa8843cf34267b7d5dcbf8869f6c8":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_e6f6e8a58359483c9ca290f043e09e5b","placeholder":"​","style":"IPY_MODEL_90d05589d9c84e1f87ffad2632c6c71d","value":" 9543/9543 [00:00&lt;00:00, 199543.56 examples/s]"}},"91c7201b53124f03954572cbe52db21d":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"0de04a84dd644332ac1547d6540c9007":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"b799ff81e69741b6897d36285b429466":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"a4a08d6bf329484cb296411b2e70ca67":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"2010f85089e640e98dfbb7585eb99bf6":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"e6f6e8a58359483c9ca290f043e09e5b":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"90d05589d9c84e1f87ffad2632c6c71d":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"01c4ff58a0a84b87bf05f9371a593caa":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_1e423fb1ebfa479bb241a7aee3cafc05","IPY_MODEL_82ea288dd90147388b07eb8961940e52","IPY_MODEL_777177eb10d54109a8a4253eca75b82d"],"layout":"IPY_MODEL_c1967bc33b4c44cc8524119f463c668b"}},"1e423fb1ebfa479bb241a7aee3cafc05":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_7d9492586a924585983b892e23bdeb4a","placeholder":"​","style":"IPY_MODEL_511a761fe718484b89abd806dc7ac60c","value":"Generating validation split: 100%"}},"82ea288dd90147388b07eb8961940e52":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_6428e0ebfd574ee88974be31648354ae","max":2388,"min":0,"orientation":"horizontal","style":"IPY_MODEL_7c3276a84e67414e8b5b0737539910ea","value":2388}},"777177eb10d54109a8a4253eca75b82d":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_171a931f2fef4ceea6d09036cf7a3315","placeholder":"​","style":"IPY_MODEL_c4238ab47e49491b9ba80bde0f67ac3b","value":" 2388/2388 [00:00&lt;00:00, 86779.46 examples/s]"}},"c1967bc33b4c44cc8524119f463c668b":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"7d9492586a924585983b892e23bdeb4a":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"511a761fe718484b89abd806dc7ac60c":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"6428e0ebfd574ee88974be31648354ae":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"7c3276a84e67414e8b5b0737539910ea":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"171a931f2fef4ceea6d09036cf7a3315":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"c4238ab47e49491b9ba80bde0f67ac3b":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"d186891419fe4cdbb29e8c9bcd27d4a7":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_f36ca85863f84e51a9c3a71c6401fbb0","IPY_MODEL_722a1da6a59a4812991fd5a3646531f8","IPY_MODEL_7f338c915d2a4154b9790c5a9c6a42ea"],"layout":"IPY_MODEL_c6182617918f403595c72c143ebb7697"}},"f36ca85863f84e51a9c3a71c6401fbb0":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_64660f224299457c9d22603cb3f5c842","placeholder":"​","style":"IPY_MODEL_277186ade77242bfa3f8095adb0935b9","value":"formatting..: 100%"}},"722a1da6a59a4812991fd5a3646531f8":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_301c3b91250444d88cf91137e7a2edf5","max":19086,"min":0,"orientation":"horizontal","style":"IPY_MODEL_87e313fe3c1c4f0bb0f44bc61bb12eb1","value":19086}},"7f338c915d2a4154b9790c5a9c6a42ea":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_3e584353238d4abdac8cadb2ef9f19b4","placeholder":"​","style":"IPY_MODEL_4d44f66f788e460083bf2f8ba569706a","value":" 19086/19086 [00:00&lt;00:00, 160460.70it/s]"}},"c6182617918f403595c72c143ebb7697":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"64660f224299457c9d22603cb3f5c842":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"277186ade77242bfa3f8095adb0935b9":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"301c3b91250444d88cf91137e7a2edf5":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"87e313fe3c1c4f0bb0f44bc61bb12eb1":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"3e584353238d4abdac8cadb2ef9f19b4":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"4d44f66f788e460083bf2f8ba569706a":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"2a119723664347af9b320ec7bd9de1cb":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_a3b6277c83ce4981bd7eca6a5c2d8104","IPY_MODEL_ffe02caf5f8d42c1ad64110207e30021","IPY_MODEL_477db912b0454a96b77bb96a2d907c43"],"layout":"IPY_MODEL_ecfa1ed61321472db260eb29af6be2ba"}},"a3b6277c83ce4981bd7eca6a5c2d8104":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_9a1984db57404860b14f3af434796cae","placeholder":"​","style":"IPY_MODEL_6c82a861d86e48c9b46ec2455dfdff7d","value":""}},"ffe02caf5f8d42c1ad64110207e30021":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_a1c5fad783b5412ba836909cd85d49c6","max":1,"min":0,"orientation":"horizontal","style":"IPY_MODEL_d25fbd1d965c48b9b1c16c859fde464c","value":0}},"477db912b0454a96b77bb96a2d907c43":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_5476179897a84305bd652c02a5106a43","placeholder":"​","style":"IPY_MODEL_f1ad03c919644c25b9fcdf307b989c7a","value":" 0/0 [00:00&lt;?, ?it/s]"}},"ecfa1ed61321472db260eb29af6be2ba":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"9a1984db57404860b14f3af434796cae":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"6c82a861d86e48c9b46ec2455dfdff7d":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"a1c5fad783b5412ba836909cd85d49c6":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":"20px"}},"d25fbd1d965c48b9b1c16c859fde464c":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"5476179897a84305bd652c02a5106a43":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"f1ad03c919644c25b9fcdf307b989c7a":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"3fbdc5eb0ad649a6a2185ff5c01447c9":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_7d509c994d3048fe9081bd8afc1f9526","IPY_MODEL_b501b74a56fc43418d098bf6b3703714","IPY_MODEL_aa1f17b5e387471cb3ff8f918603cc01"],"layout":"IPY_MODEL_72fadabe43304723bfa05ec9a66c680f"}},"7d509c994d3048fe9081bd8afc1f9526":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_009f988c42ba4b07858abc62a8ff4ae7","placeholder":"​","style":"IPY_MODEL_0c15c3a41f3442f2b6c5ef2f9e91c261","value":"Generating train split: "}},"b501b74a56fc43418d098bf6b3703714":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_3f600d79bd094f939727c8dba98c492e","max":1,"min":0,"orientation":"horizontal","style":"IPY_MODEL_6c9745bcf8f24781a3588a8223335bd7","value":1}},"aa1f17b5e387471cb3ff8f918603cc01":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_d742c04e26cc46cf87f147df32af90ad","placeholder":"​","style":"IPY_MODEL_9c88941c7caf48398e19f301dfaa3f32","value":" 19086/0 [00:06&lt;00:00, 3581.79 examples/s]"}},"72fadabe43304723bfa05ec9a66c680f":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"009f988c42ba4b07858abc62a8ff4ae7":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"0c15c3a41f3442f2b6c5ef2f9e91c261":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"3f600d79bd094f939727c8dba98c492e":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":"20px"}},"6c9745bcf8f24781a3588a8223335bd7":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"d742c04e26cc46cf87f147df32af90ad":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"9c88941c7caf48398e19f301dfaa3f32":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"ff32afd0b67e4372b32e39bee4732632":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_2e1250d4e7b34c408cf2d0e76f104930","IPY_MODEL_7d45b0ee63af4055b3884ee8cc0e247d","IPY_MODEL_1671dd31d0e94fce84b7e30df924162b"],"layout":"IPY_MODEL_efd665b309c645d195860f4b23f68fd0"}},"2e1250d4e7b34c408cf2d0e76f104930":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_e5e4826e0ba74aa39c850aa686e02953","placeholder":"​","style":"IPY_MODEL_e3d54027f0eb4131b722e01ffc1a75c5","value":"100%"}},"7d45b0ee63af4055b3884ee8cc0e247d":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_fc28cafadc2943b394983991aa222f2c","max":19086,"min":0,"orientation":"horizontal","style":"IPY_MODEL_08f7b66e545e48ab9844b5f6ed53a658","value":19086}},"1671dd31d0e94fce84b7e30df924162b":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_0af158b6dab8447bb7a8e46371df6044","placeholder":"​","style":"IPY_MODEL_4b50a26daa1440fe93a46b062a5b353c","value":" 19086/19086 [00:05&lt;00:00, 3595.39it/s]"}},"efd665b309c645d195860f4b23f68fd0":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"e5e4826e0ba74aa39c850aa686e02953":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"e3d54027f0eb4131b722e01ffc1a75c5":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"fc28cafadc2943b394983991aa222f2c":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"08f7b66e545e48ab9844b5f6ed53a658":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"0af158b6dab8447bb7a8e46371df6044":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"4b50a26daa1440fe93a46b062a5b353c":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"d9c98c221ca34fb0bcd10ffe057e4b1a":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_c17f202789cc4b0bbd379c6c56a23f6d","IPY_MODEL_b7901d36d93f4fbdbe54369ea4be8968","IPY_MODEL_da205f761a7e436983e08f9521384875"],"layout":"IPY_MODEL_f7690f61b1384ace8e4e0a3e3e2e78d9"}},"c17f202789cc4b0bbd379c6c56a23f6d":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_13f5be0753d54f5e9793a436bfc2c807","placeholder":"​","style":"IPY_MODEL_dc432aa357d640d3a57690bfbb30382e","value":"Saving the dataset (1/1 shards): 100%"}},"b7901d36d93f4fbdbe54369ea4be8968":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_d8a361c3653b456c9fe2834c5bbdc994","max":19086,"min":0,"orientation":"horizontal","style":"IPY_MODEL_e181354052df46f2bbf78c6c64b90f66","value":19086}},"da205f761a7e436983e08f9521384875":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_358d62623bda45488c95cd035f2d3e39","placeholder":"​","style":"IPY_MODEL_2689554243194d24880808231936db58","value":" 19086/19086 [00:00&lt;00:00, 662291.40 examples/s]"}},"f7690f61b1384ace8e4e0a3e3e2e78d9":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"13f5be0753d54f5e9793a436bfc2c807":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"dc432aa357d640d3a57690bfbb30382e":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"d8a361c3653b456c9fe2834c5bbdc994":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"e181354052df46f2bbf78c6c64b90f66":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"358d62623bda45488c95cd035f2d3e39":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"2689554243194d24880808231936db58":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"08b1a8f1a78b43cc9fcadfbd62b8c640":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_0425b5a2fd4d43c7a5c23ce0d871c2bc","IPY_MODEL_d195de0e6ae24554aae7dac017702aa6","IPY_MODEL_925779e4950449468858202aea2e41c5"],"layout":"IPY_MODEL_77c13a2147484f0ba7df11ebe2c3ed05"}},"0425b5a2fd4d43c7a5c23ce0d871c2bc":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_533cb8875d5244dda8e32d7cbc73ab30","placeholder":"​","style":"IPY_MODEL_50f8bac5cc714a07841576d2e68a1540","value":"Saving the dataset (1/1 shards): 100%"}},"d195de0e6ae24554aae7dac017702aa6":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_7e088ac4ea01438788ec74e036ba6aa4","max":19086,"min":0,"orientation":"horizontal","style":"IPY_MODEL_e6a724f0076b465ea14da1c66c93514b","value":19086}},"925779e4950449468858202aea2e41c5":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_3ed33e39bd80437d855a878928198bbc","placeholder":"​","style":"IPY_MODEL_bcda59cdb6b44c468ec40f25db93e0ed","value":" 19086/19086 [00:00&lt;00:00, 440141.45 examples/s]"}},"77c13a2147484f0ba7df11ebe2c3ed05":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"533cb8875d5244dda8e32d7cbc73ab30":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"50f8bac5cc714a07841576d2e68a1540":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"7e088ac4ea01438788ec74e036ba6aa4":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"e6a724f0076b465ea14da1c66c93514b":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"3ed33e39bd80437d855a878928198bbc":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"bcda59cdb6b44c468ec40f25db93e0ed":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"accdc799fb984c06928a728fc83235f3":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_da4a447f614c4a7ab4ee0aa2866ce1d8","IPY_MODEL_e94ff7ee9edc4732a15d1fe4ebdee452","IPY_MODEL_cd57c5897c9146b2bb0882711636c186"],"layout":"IPY_MODEL_d5cf4320251d4ef1a43f744ad057f9bc"}},"da4a447f614c4a7ab4ee0aa2866ce1d8":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_fdd537bd5c214210892d8de2d6f36cde","placeholder":"​","style":"IPY_MODEL_9b4f67139c4e474fab9ff5f68841dd1e","value":"Loading checkpoint shards: 100%"}},"e94ff7ee9edc4732a15d1fe4ebdee452":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_098f37019be84aa0b9d9004ee02f6a8b","max":4,"min":0,"orientation":"horizontal","style":"IPY_MODEL_1d27c47dcffe4cb08e8b9f953ddd06e6","value":4}},"cd57c5897c9146b2bb0882711636c186":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_8ca9fc82ec214686bb9f89a950263b11","placeholder":"​","style":"IPY_MODEL_c827a177aeb84d6886baa707b55873aa","value":" 4/4 [00:09&lt;00:00,  2.17s/it]"}},"d5cf4320251d4ef1a43f744ad057f9bc":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"fdd537bd5c214210892d8de2d6f36cde":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"9b4f67139c4e474fab9ff5f68841dd1e":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"098f37019be84aa0b9d9004ee02f6a8b":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"1d27c47dcffe4cb08e8b9f953ddd06e6":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"8ca9fc82ec214686bb9f89a950263b11":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"c827a177aeb84d6886baa707b55873aa":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"256e4d08479e44cea312bc61f5df3e65":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_9de3f80680ea4e068103f4f54763888b","IPY_MODEL_8cefc7bb2af64ce68749eae8faf0735d","IPY_MODEL_e96202e3af654c328cb39b5c2931624e"],"layout":"IPY_MODEL_08ebbf44bcb545ad92eef0f6df938782"}},"9de3f80680ea4e068103f4f54763888b":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_c82035139f974912b39fc19a16749abc","placeholder":"​","style":"IPY_MODEL_169212d00c5e4a94b9741ff39ab8a517","value":"Loading checkpoint shards: 100%"}},"8cefc7bb2af64ce68749eae8faf0735d":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_78a1ce26130240fdb730c3e1972566e9","max":4,"min":0,"orientation":"horizontal","style":"IPY_MODEL_26422841e84d4af9816b2bf29dc9d253","value":4}},"e96202e3af654c328cb39b5c2931624e":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_f7a1c8d0c9bf412d8ce43c7873bd1b97","placeholder":"​","style":"IPY_MODEL_a90c70e22d344674a8440b036101d9c5","value":" 4/4 [01:06&lt;00:00, 14.09s/it]"}},"08ebbf44bcb545ad92eef0f6df938782":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"c82035139f974912b39fc19a16749abc":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"169212d00c5e4a94b9741ff39ab8a517":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"78a1ce26130240fdb730c3e1972566e9":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"26422841e84d4af9816b2bf29dc9d253":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"f7a1c8d0c9bf412d8ce43c7873bd1b97":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"a90c70e22d344674a8440b036101d9c5":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"7d886b5f22c545d0bdd23d345f530661":{"model_module":"@jupyter-widgets/controls","model_name":"HBoxModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_31e79afb3c9a4af1948bda9f7eb75aac","IPY_MODEL_cdc4e75a547d42ea8384f4d2bec59197","IPY_MODEL_a18fc50e4dfb4c14866ad85836455800"],"layout":"IPY_MODEL_9cac43448fba448c8c9c38e8aa66ecae"}},"31e79afb3c9a4af1948bda9f7eb75aac":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_fbe7b46555284c7cbde120ee3e8b92c6","placeholder":"​","style":"IPY_MODEL_5dd0b638f97742b1ab5c32021b0f9097","value":"generation_config.json: 100%"}},"cdc4e75a547d42ea8384f4d2bec59197":{"model_module":"@jupyter-widgets/controls","model_name":"FloatProgressModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_81ddc58c72b6451ea29c47c48c18c6c9","max":177,"min":0,"orientation":"horizontal","style":"IPY_MODEL_5e30c83d7900483a8d05500e98411e04","value":177}},"a18fc50e4dfb4c14866ad85836455800":{"model_module":"@jupyter-widgets/controls","model_name":"HTMLModel","model_module_version":"1.5.0","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_46596104a92a4328899496b305d36932","placeholder":"​","style":"IPY_MODEL_643e36f1ab674c9cb0d1e407e65170b4","value":" 177/177 [00:00&lt;00:00, 15.6kB/s]"}},"9cac43448fba448c8c9c38e8aa66ecae":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"fbe7b46555284c7cbde120ee3e8b92c6":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"5dd0b638f97742b1ab5c32021b0f9097":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"81ddc58c72b6451ea29c47c48c18c6c9":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"5e30c83d7900483a8d05500e98411e04":{"model_module":"@jupyter-widgets/controls","model_name":"ProgressStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"46596104a92a4328899496b305d36932":{"model_module":"@jupyter-widgets/base","model_name":"LayoutModel","model_module_version":"1.2.0","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"643e36f1ab674c9cb0d1e407e65170b4":{"model_module":"@jupyter-widgets/controls","model_name":"DescriptionStyleModel","model_module_version":"1.5.0","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}}}},"accelerator":"GPU"},"cells":[{"cell_type":"markdown","source":["# FinGPT: Training with LoRA and Meta-Llama-3-8B"],"metadata":{"id":"ByoMEW4RHTm8"}},{"cell_type":"markdown","source":["## Part 1: Preparing the Data"],"metadata":{"id":"mc_iU0uSHcBH"}},{"cell_type":"markdown","source":["### 1.1 Initialize Directories"],"metadata":{"id":"xPQiRkSBHlPk"}},{"cell_type":"code","source":["hf_token = \"Your HF token\" #Put your own HF token here, do not publish it\n","from huggingface_hub import login\n","# Login directly with your Token (remember not to share this Token publicly)\n","login(token=hf_token)"],"metadata":{"id":"pu9p8wwFav3d"},"execution_count":null,"outputs":[]},{"cell_type":"code","execution_count":null,"metadata":{"id":"M4t-GME9HSi_"},"outputs":[],"source":["import os\n","import shutil"]},{"cell_type":"code","source":["if not os.path.exists('./data'):\n","    os.makedirs('./data')\n","\n","\n","jsonl_path = \"../data/dataset_new.jsonl\"\n","save_path = '../data/dataset_new'\n","\n","\n","if os.path.exists(jsonl_path):\n","    os.remove(jsonl_path)\n","\n","if os.path.exists(save_path):\n","    shutil.rmtree(save_path)\n","\n","directory = \"../data\"\n","if not os.path.exists(directory):\n","    os.makedirs(directory)"],"metadata":{"id":"763xKcP5HsMg"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["!ls -l ./data/dataset_new"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"o5Ld9fkI7ya0","executionInfo":{"status":"ok","timestamp":1727628921511,"user_tz":240,"elapsed":351,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"f74a83b5-6a36-4217-9aee-68194813497e"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["ls: cannot access './data/dataset_new': No such file or directory\n"]}]},{"cell_type":"markdown","source":["### 1.2 Load and Prepare Dataset"],"metadata":{"id":"avu789edJigP"}},{"cell_type":"code","source":["!pip install datasets"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Wj4yKaOvXxhZ","executionInfo":{"status":"ok","timestamp":1727628939219,"user_tz":240,"elapsed":7919,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"5578aefa-17c8-40a1-9f35-d29346b6f005"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting datasets\n","  Downloading datasets-3.0.1-py3-none-any.whl.metadata (20 kB)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from datasets) (3.16.1)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from datasets) (1.26.4)\n","Collecting pyarrow>=15.0.0 (from datasets)\n","  Downloading pyarrow-17.0.0-cp310-cp310-manylinux_2_28_x86_64.whl.metadata (3.3 kB)\n","Collecting dill<0.3.9,>=0.3.0 (from datasets)\n","  Downloading dill-0.3.8-py3-none-any.whl.metadata (10 kB)\n","Requirement already satisfied: pandas in /usr/local/lib/python3.10/dist-packages (from datasets) (2.1.4)\n","Requirement already satisfied: requests>=2.32.2 in /usr/local/lib/python3.10/dist-packages (from datasets) (2.32.3)\n","Requirement already satisfied: tqdm>=4.66.3 in /usr/local/lib/python3.10/dist-packages (from datasets) (4.66.5)\n","Collecting xxhash (from datasets)\n","  Downloading xxhash-3.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)\n","Collecting multiprocess (from datasets)\n","  Downloading multiprocess-0.70.16-py310-none-any.whl.metadata (7.2 kB)\n","Requirement already satisfied: fsspec<=2024.6.1,>=2023.1.0 in /usr/local/lib/python3.10/dist-packages (from fsspec[http]<=2024.6.1,>=2023.1.0->datasets) (2024.6.1)\n","Requirement already satisfied: aiohttp in /usr/local/lib/python3.10/dist-packages (from datasets) (3.10.5)\n","Requirement already satisfied: huggingface-hub>=0.22.0 in /usr/local/lib/python3.10/dist-packages (from datasets) (0.24.7)\n","Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from datasets) (24.1)\n","Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from datasets) (6.0.2)\n","Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (2.4.0)\n","Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.3.1)\n","Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (24.2.0)\n","Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.4.1)\n","Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (6.1.0)\n","Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.11.1)\n","Requirement already satisfied: async-timeout<5.0,>=4.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (4.0.3)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.22.0->datasets) (4.12.2)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (2024.8.30)\n","Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2.8.2)\n","Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2024.2)\n","Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2024.1)\n","Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas->datasets) (1.16.0)\n","Downloading datasets-3.0.1-py3-none-any.whl (471 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m471.6/471.6 kB\u001b[0m \u001b[31m31.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading dill-0.3.8-py3-none-any.whl (116 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m116.3/116.3 kB\u001b[0m \u001b[31m10.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pyarrow-17.0.0-cp310-cp310-manylinux_2_28_x86_64.whl (39.9 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m39.9/39.9 MB\u001b[0m \u001b[31m56.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading multiprocess-0.70.16-py310-none-any.whl (134 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m134.8/134.8 kB\u001b[0m \u001b[31m12.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading xxhash-3.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m194.1/194.1 kB\u001b[0m \u001b[31m17.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hInstalling collected packages: xxhash, pyarrow, dill, multiprocess, datasets\n","  Attempting uninstall: pyarrow\n","    Found existing installation: pyarrow 14.0.2\n","    Uninstalling pyarrow-14.0.2:\n","      Successfully uninstalled pyarrow-14.0.2\n","\u001b[31mERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.\n","cudf-cu12 24.4.1 requires pyarrow<15.0.0a0,>=14.0.1, but you have pyarrow 17.0.0 which is incompatible.\u001b[0m\u001b[31m\n","\u001b[0mSuccessfully installed datasets-3.0.1 dill-0.3.8 multiprocess-0.70.16 pyarrow-17.0.0 xxhash-3.5.0\n"]}]},{"cell_type":"code","source":["from datasets import load_dataset\n","import datasets"],"metadata":{"id":"a7Z1LIC7II3r"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["dic = {\n","    0:'negative',\n","    1:'positive',\n","    2:'neutral'\n","}"],"metadata":{"id":"PZbuDeGnMfuK"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["tfns = load_dataset('zeroshot/twitter-financial-news-sentiment') #tfns = Twitter Financial News Sentiment"],"metadata":{"id":"VHAEKqhsOtQQ","colab":{"base_uri":"https://localhost:8080/","height":286,"referenced_widgets":["07b2d0624ca54c26959c9fffc8da37d3","0df33a26ef494bc8b5a97855af865d51","315751c486bf4310832330cf83f743a9","c6371d81e1544b38938730f6e7e58c62","7116e2a9e4d74b63a8f9485358be9c70","3b138daaf42941e388c0069e437a5231","4de915655a97452c941d1c1599d9d70e","feea4a62e28644db9352c111ba95c141","97f5155b49684aeaae5b903a2e3b96c0","856b2d507f7e49b980fbb52cd8c4a603","73333eb78c53466883727322c6115908","354bd5e8413d46cfa9ae78b5648fb436","d380540a1a5d433a86d8361b77fda56f","7b2a8b68667c4934be028d4cf7b6956d","4061becdc986431bb470a474d7f0d9e2","f3549f709ad747de99c82985384ebf9a","d528afd3c6574a778f7016197747e3b5","2c1eb0bce9cd4218b6fba3b5febfc910","46531a3d409248b1b43a01b1fd0ceb6e","40e9b365dcd940caa1b9fb1e2f37b5dd","9c45f7febf9b432da3392900ae23f198","1a2540b48f0a402c96a2560bc1ac4165","b7de3576f65344eaaf7d5a08db85588a","d932cad0586947509ab3fde467ba7357","1ac87a168d7c4ed08994f681d59bf3e4","6d369cc9fd2243d293d7e2a5ff4b2db2","968d6e47a31949478c7e21b4bed7e029","7dd9abbc09f047729087cf6b32e7fdbe","add35e421a114d7781503be9af48d282","dca076fd97504098b50decb0ea6a8c6e","49faea6373f14d67936171644659efd0","0c821a883f0c44078db3064d9d7d6ad9","222403e6f19349f298df755a09560daa","ff8e0e5c79be4c19937e49cc2ccbbc21","1dcd9f5bc2ab496194b9e5838228caa6","0ec00d34e953436eaf8c8f32af88a329","ef9fa8843cf34267b7d5dcbf8869f6c8","91c7201b53124f03954572cbe52db21d","0de04a84dd644332ac1547d6540c9007","b799ff81e69741b6897d36285b429466","a4a08d6bf329484cb296411b2e70ca67","2010f85089e640e98dfbb7585eb99bf6","e6f6e8a58359483c9ca290f043e09e5b","90d05589d9c84e1f87ffad2632c6c71d","01c4ff58a0a84b87bf05f9371a593caa","1e423fb1ebfa479bb241a7aee3cafc05","82ea288dd90147388b07eb8961940e52","777177eb10d54109a8a4253eca75b82d","c1967bc33b4c44cc8524119f463c668b","7d9492586a924585983b892e23bdeb4a","511a761fe718484b89abd806dc7ac60c","6428e0ebfd574ee88974be31648354ae","7c3276a84e67414e8b5b0737539910ea","171a931f2fef4ceea6d09036cf7a3315","c4238ab47e49491b9ba80bde0f67ac3b"]},"executionInfo":{"status":"ok","timestamp":1727628956408,"user_tz":240,"elapsed":7634,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"3839f1db-f1f8-4f26-f9a1-103af869a660"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_token.py:89: UserWarning: \n","The secret `HF_TOKEN` does not exist in your Colab secrets.\n","To authenticate with the Hugging Face Hub, create a token in your settings tab (https://huggingface.co/settings/tokens), set it as secret in your Google Colab and restart your session.\n","You will be able to reuse this secret in all of your notebooks.\n","Please note that authentication is recommended but still optional to access public models or datasets.\n","  warnings.warn(\n"]},{"output_type":"display_data","data":{"text/plain":["README.md:   0%|          | 0.00/1.39k [00:00<?, ?B/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"07b2d0624ca54c26959c9fffc8da37d3"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["sent_train.csv:   0%|          | 0.00/859k [00:00<?, ?B/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"354bd5e8413d46cfa9ae78b5648fb436"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["sent_valid.csv:   0%|          | 0.00/217k [00:00<?, ?B/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"b7de3576f65344eaaf7d5a08db85588a"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["Generating train split:   0%|          | 0/9543 [00:00<?, ? examples/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"ff8e0e5c79be4c19937e49cc2ccbbc21"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["Generating validation split:   0%|          | 0/2388 [00:00<?, ? examples/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"01c4ff58a0a84b87bf05f9371a593caa"}},"metadata":{}}]},{"cell_type":"code","source":["tfns = tfns['train']\n","tfns = tfns.to_pandas()\n","\n","tfns['label'] = tfns['label'].apply(lambda x : dic[x])  # Map numerical labels to their corresponding sentiments\n","\n","#Add instruction for each data entry, which is crucial for Instruction Tuning.\n","tfns['instruction'] = 'What is the sentiment of this tweet? Please choose an answer from {negative/neutral/positive}.'\n","tfns.columns = ['input','output','instruction']\n","\n","#Convert the Pandas dataframe back to a Hugging Face Dataset object.\n","tfns = datasets.Dataset.from_pandas(tfns)\n","tfns"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"EBUg8dULO9Vu","executionInfo":{"status":"ok","timestamp":1727628970896,"user_tz":240,"elapsed":356,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"e346425f-330c-4f67-f09f-35b8c0a84319"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["Dataset({\n","    features: ['input', 'output', 'instruction'],\n","    num_rows: 9543\n","})"]},"metadata":{},"execution_count":8}]},{"cell_type":"markdown","source":["### 1.3 Concatenate and Shuffle Dataset"],"metadata":{"id":"a7Sxgc0TR7KC"}},{"cell_type":"code","source":["tmp_dataset = datasets.concatenate_datasets([tfns]*2) #Creat a list that contains 2 tfns\n","train_dataset = tmp_dataset\n","print(tmp_dataset.num_rows)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"2rzsssIJQNvR","executionInfo":{"status":"ok","timestamp":1727628975938,"user_tz":240,"elapsed":360,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"fb578ec4-6d96-4ac4-8898-98a80f9d812b"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["19086\n"]}]},{"cell_type":"code","source":["all_dataset = train_dataset.shuffle(seed = 42)\n","all_dataset.shape"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"XL2210OoSSCY","executionInfo":{"status":"ok","timestamp":1727628977033,"user_tz":240,"elapsed":1,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"48946bf7-c7a7-4780-b757-36f50fd5d63f"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["(19086, 3)"]},"metadata":{},"execution_count":10}]},{"cell_type":"markdown","source":["The training data is all set"],"metadata":{"id":"uRGfbF0rW1xj"}},{"cell_type":"markdown","source":["## Part 2: Dataset Formatting and Tokenization"],"metadata":{"id":"b_3uB3hMTSK8"}},{"cell_type":"markdown","source":["### 2.1 Dataset Fromatting"],"metadata":{"id":"FDWmm-bNTbw9"}},{"cell_type":"markdown","source":["You must structure your data in a specific format that aligns with the training process."],"metadata":{"id":"x62UGwsCTrqP"}},{"cell_type":"code","source":["import json\n","from tqdm.notebook import tqdm\n","# Used to display a progress bar in Jupyter Notebook to help visualize the progress of data processing"],"metadata":{"id":"7XZ2sYr4W1g9"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["def format_examle(example:dict) -> dict:    #Defines a function named format_example that takes a dictionary as input (example: dict) and returns a dictionary (-> dict).\n","  context = f\"Instruction:{example['instruction']}\\n\"   #Initializes a string variable context using an f-string to format the instruction.\n","  if example.get('input'):     #Checks if the example dictionary has an input key and whether it contains a value.\n","    context += f\"Input:{example['input']}\\n\"\n","  context += 'Answer: '\n","  target = example['output']\n","  return {\"context\": context , \"target\":target}  # This is the format of json data.\n","\n","\n","\n","data_list = []\n","for item in all_dataset.to_pandas().itertuples():    #Iterates over each row of the dataset all_dataset, which has been converted into a Pandas DataFrame using .to_pandas().\n","  tmp = {}\n","  tmp['instruction'] = item.instruction\n","  tmp['input'] = item.input\n","  tmp['output'] = item.output\n","  data_list.append(tmp)"],"metadata":{"id":"FHv7KAtVSdMI"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["This is what the elements in data_list look like before formatting\n","\n","---\n","\n"],"metadata":{"id":"u8pPeWBkdOum"}},{"cell_type":"code","source":["data_list[0]"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"cootm_jhch6O","executionInfo":{"status":"ok","timestamp":1727628988495,"user_tz":240,"elapsed":735,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"87643703-7afe-422b-fd55-16cbd17b83fe"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'instruction': 'What is the sentiment of this tweet? Please choose an answer from {negative/neutral/positive}.',\n"," 'input': '$DRIP $LABU $GASX - SOXL, LABU, JO and GUSH among weekly ETF movers https://t.co/FntrWNY9sn',\n"," 'output': 'neutral'}"]},"metadata":{},"execution_count":13}]},{"cell_type":"code","source":["# save to a json file\n","with open(\"../data/dataset_new.jsonl\",'w') as f:\n","  for example in tqdm(data_list,desc = 'formatting..'):\n","    f.write(json.dumps(format_examle(example)) + '\\n')"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":49,"referenced_widgets":["d186891419fe4cdbb29e8c9bcd27d4a7","f36ca85863f84e51a9c3a71c6401fbb0","722a1da6a59a4812991fd5a3646531f8","7f338c915d2a4154b9790c5a9c6a42ea","c6182617918f403595c72c143ebb7697","64660f224299457c9d22603cb3f5c842","277186ade77242bfa3f8095adb0935b9","301c3b91250444d88cf91137e7a2edf5","87e313fe3c1c4f0bb0f44bc61bb12eb1","3e584353238d4abdac8cadb2ef9f19b4","4d44f66f788e460083bf2f8ba569706a"]},"id":"S6qo2PPueXG0","executionInfo":{"status":"ok","timestamp":1727628992205,"user_tz":240,"elapsed":380,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"7a165fb1-ec76-4d40-ba59-6da918ff3f96"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":["formatting..:   0%|          | 0/19086 [00:00<?, ?it/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"d186891419fe4cdbb29e8c9bcd27d4a7"}},"metadata":{}}]},{"cell_type":"code","source":["json_data_list = []  # Var to save json data\n","\n","# Save to a jsonl file and store in json_data_list\n","with open(\"../data/dataset_new.jsonl\", 'r') as f:\n","    for line in f:\n","        json_line = json.loads(line.strip())\n","        json_data_list.append(json_line)"],"metadata":{"id":"HHsyl1zPgC77"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["This is what it is look like after formatting"],"metadata":{"id":"2h7lzIE0hHJF"}},{"cell_type":"code","source":["json_data_list[0]"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k-032c77gzF1","executionInfo":{"status":"ok","timestamp":1727629002683,"user_tz":240,"elapsed":339,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"c7dc71e2-6296-4d73-ec29-3a0212842295"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'context': 'Instruction:What is the sentiment of this tweet? Please choose an answer from {negative/neutral/positive}.\\nInput:$DRIP $LABU $GASX - SOXL, LABU, JO and GUSH among weekly ETF movers https://t.co/FntrWNY9sn\\nAnswer: ',\n"," 'target': 'neutral'}"]},"metadata":{},"execution_count":16}]},{"cell_type":"code","source":["json_data_list[0]['context']"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":36},"id":"elRL-VkVqQNf","executionInfo":{"status":"ok","timestamp":1727629005547,"user_tz":240,"elapsed":325,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"05ea8534-f23e-4d75-cf02-300aa43a21fb"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["'Instruction:What is the sentiment of this tweet? Please choose an answer from {negative/neutral/positive}.\\nInput:$DRIP $LABU $GASX - SOXL, LABU, JO and GUSH among weekly ETF movers https://t.co/FntrWNY9sn\\nAnswer: '"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":17}]},{"cell_type":"code","source":["json_data_list[0]['target']"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":36},"id":"U5za7_xYqWYP","executionInfo":{"status":"ok","timestamp":1727629006998,"user_tz":240,"elapsed":351,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"f11b1549-8f62-4742-ef31-cd58e6f955af"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["'neutral'"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":18}]},{"cell_type":"markdown","source":["login to HF to use Llama 3"],"metadata":{"id":"SqZapShIy_Lq"}},{"cell_type":"markdown","source":["### 2.2 Tokenization"],"metadata":{"id":"QHCUCE7-U0VV"}},{"cell_type":"markdown","source":["Tokenization is the process of converting input text into tokens that can be fed into the model."],"metadata":{"id":"SURNzAL0hoY-"}},{"cell_type":"code","source":["## need to set the packages to run this code block\n","!pip install protobuf transformers==4.30.2 cpm_kernels torch>=2.0 gradio mdtex2html sentencepiece accelerate"],"metadata":{"id":"_t08UOLohoJq"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["from transformers import AutoTokenizer, AutoConfig"],"metadata":{"id":"37DThz-phmHj","colab":{"base_uri":"https://localhost:8080/","height":67,"referenced_widgets":["2a119723664347af9b320ec7bd9de1cb","a3b6277c83ce4981bd7eca6a5c2d8104","ffe02caf5f8d42c1ad64110207e30021","477db912b0454a96b77bb96a2d907c43","ecfa1ed61321472db260eb29af6be2ba","9a1984db57404860b14f3af434796cae","6c82a861d86e48c9b46ec2455dfdff7d","a1c5fad783b5412ba836909cd85d49c6","d25fbd1d965c48b9b1c16c859fde464c","5476179897a84305bd652c02a5106a43","f1ad03c919644c25b9fcdf307b989c7a"]},"executionInfo":{"status":"ok","timestamp":1727629038091,"user_tz":240,"elapsed":776,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"dbc9f1fa-d526-49f8-bfcf-42eabfb02dc0"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["The cache for model files in Transformers v4.22.0 has been updated. Migrating your old cache. This is a one-time only operation. You can interrupt this and resume the migration later on by calling `transformers.utils.move_cache()`.\n"]},{"output_type":"display_data","data":{"text/plain":["0it [00:00, ?it/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"2a119723664347af9b320ec7bd9de1cb"}},"metadata":{}}]},{"cell_type":"code","source":["model_name = 'meta-llama/Meta-Llama-3-8B'   #Specifies the model you're working with\n","jsonl_path = '../data/dataset_new.jsonl'\n","save_path = '../data/dataset_new'    #The path where the processed dataset will be saved after tokenization or any other processing\n","max_seq_length = 512    #Maximum sequence length for the inputs. If an input exceeds this length, it will either be truncated or skipped.\n","skip_overlength = True    #A flag that determines whether to skip overlength examples that exceed max_seq_length"],"metadata":{"id":"v00HBZ_zj4Ve"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["This preprocess function tokenizes the promt and target, combines them into Input ids, trims or pads the squence to the maximum squence length."],"metadata":{"id":"ZTsS1aeimfNR"}},{"cell_type":"code","source":["def preprocess(tokenizer, config, example, max_seq_length):\n","  prompt = example['context']\n","  target = example['target']\n","  prompt_ids = tokenizer.encode(   #ids refers to the numerical identifiers that correspond to tokens.These token ids are what the model processes, as models require numerical input rather than raw text.\n","      prompt,\n","      max_length = max_seq_length,\n","      truncation = True\n","      )\n","  target_ids = tokenizer.encode(\n","      target,\n","      max_length = max_seq_length,\n","      truncation = True,\n","      add_special_tokens = False\n","      )\n","  input_ids = prompt_ids + target_ids + [config.eos_token_id]  #[config.eos_token_id] is a sign that marks the end of the list.\n","  return {'input_ids':input_ids,'seq_len':len(prompt_ids)}"],"metadata":{"id":"4vq6aOkOkVRg"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)\n","config = AutoConfig.from_pretrained(model_name, trust_remote_code=True, device_map='auto')"],"metadata":{"id":"-KJikX-D2cRC"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["example = json_data_list[0]\n","prompt = example['context']\n","target = example['target']"],"metadata":{"id":"0-SCMNMA2deK"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["example['target']"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":36},"id":"vr_1HqJG221U","executionInfo":{"status":"ok","timestamp":1727633103969,"user_tz":240,"elapsed":364,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"7b9a8f1d-2d3e-4448-888b-6d50e3046821"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["'neutral'"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":47}]},{"cell_type":"markdown","source":["input_ids is a complete list of token IDs that combines the input sentence (prompt), the target sentence (target), and the end-of-sequence token (eos_token_id).\n","This list is fed into the model for training or inference. The model uses these IDs to understand and process the input and generate the corresponding output."],"metadata":{"id":"leOtS6SuwKF6"}},{"cell_type":"markdown","source":["The read_jsonl function reads each line from the JSONL file, preprocesses it using the preprocess function,\n","and then yields each preprocessed example."],"metadata":{"id":"oTN9ClZMwSf-"}},{"cell_type":"code","source":["def read_jsonl(path, max_seq_length, skip_overlength=False):\n","    tokenizer = AutoTokenizer.from_pretrained(    #Initializes a tokenizer using a pre-trained model specified by model_name.\n","        model_name, trust_remote_code=True)\n","    config = AutoConfig.from_pretrained(    #Loads the configuration for the model. device_map='auto' helps automatically map the model to available devices (e.g., GPU or CPU).\n","        model_name, trust_remote_code=True, device_map='auto')\n","    with open(path, \"r\") as f:\n","        for line in tqdm(f.readlines()):\n","            example = json.loads(line)\n","            #Preprocesses each example by tokenizing it and converting it into input_ids using the preprocess() function,\n","            #which takes the tokenizer, config, example, and max_seq_length as inputs.\n","            feature = preprocess(tokenizer, config, example, max_seq_length)\n","            if skip_overlength and len(feature[\"input_ids\"]) > max_seq_length:\n","                continue\n","            feature[\"input_ids\"] = feature[\"input_ids\"][:max_seq_length]  #Truncates the input_ids to ensure they do not exceed max_seq_length.\n","            yield feature\n","#Uses yield to return one preprocessed feature at a time, making the function a generator.\n","#This allows you to iterate over the processed features one by one without loading everything into memory at once."],"metadata":{"id":"dPgs5ecEwQGS"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["### 2.3 Save the Dataset"],"metadata":{"id":"OiIr5nLhx8PY"}},{"cell_type":"code","source":["save_path = './data/dataset_new'"],"metadata":{"id":"jTsJEl9UnmWV"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["dataset = datasets.Dataset.from_generator(\n","    lambda: read_jsonl(jsonl_path, max_seq_length, skip_overlength)\n","    )\n","dataset.save_to_disk(save_path)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":169,"referenced_widgets":["3fbdc5eb0ad649a6a2185ff5c01447c9","7d509c994d3048fe9081bd8afc1f9526","b501b74a56fc43418d098bf6b3703714","aa1f17b5e387471cb3ff8f918603cc01","72fadabe43304723bfa05ec9a66c680f","009f988c42ba4b07858abc62a8ff4ae7","0c15c3a41f3442f2b6c5ef2f9e91c261","3f600d79bd094f939727c8dba98c492e","6c9745bcf8f24781a3588a8223335bd7","d742c04e26cc46cf87f147df32af90ad","9c88941c7caf48398e19f301dfaa3f32","ff32afd0b67e4372b32e39bee4732632","2e1250d4e7b34c408cf2d0e76f104930","7d45b0ee63af4055b3884ee8cc0e247d","1671dd31d0e94fce84b7e30df924162b","efd665b309c645d195860f4b23f68fd0","e5e4826e0ba74aa39c850aa686e02953","e3d54027f0eb4131b722e01ffc1a75c5","fc28cafadc2943b394983991aa222f2c","08f7b66e545e48ab9844b5f6ed53a658","0af158b6dab8447bb7a8e46371df6044","4b50a26daa1440fe93a46b062a5b353c","d9c98c221ca34fb0bcd10ffe057e4b1a","c17f202789cc4b0bbd379c6c56a23f6d","b7901d36d93f4fbdbe54369ea4be8968","da205f761a7e436983e08f9521384875","f7690f61b1384ace8e4e0a3e3e2e78d9","13f5be0753d54f5e9793a436bfc2c807","dc432aa357d640d3a57690bfbb30382e","d8a361c3653b456c9fe2834c5bbdc994","e181354052df46f2bbf78c6c64b90f66","358d62623bda45488c95cd035f2d3e39","2689554243194d24880808231936db58"]},"id":"D24yK-E8ynIh","executionInfo":{"status":"ok","timestamp":1727634162475,"user_tz":240,"elapsed":9684,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"0bc4dbbf-2beb-4bee-d311-5d7262144a55"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":["Generating train split: 0 examples [00:00, ? examples/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"3fbdc5eb0ad649a6a2185ff5c01447c9"}},"metadata":{}},{"output_type":"stream","name":"stderr","text":["/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py:1150: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n","  warnings.warn(\n"]},{"output_type":"display_data","data":{"text/plain":["  0%|          | 0/19086 [00:00<?, ?it/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"ff32afd0b67e4372b32e39bee4732632"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["Saving the dataset (0/1 shards):   0%|          | 0/19086 [00:00<?, ? examples/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"d9c98c221ca34fb0bcd10ffe057e4b1a"}},"metadata":{}}]},{"cell_type":"code","source":["from datasets import load_from_disk\n","\n","# Load Dataset\n","loaded_dataset = load_from_disk('./data/dataset_new')\n","\n","# Check the structure of Dataset\n","print(loaded_dataset)\n","\n","# Print the first sample of the dataset\n","print(loaded_dataset['input_ids'][0])"],"metadata":{"id":"DM_V5ZZqiLJV"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["### 2.4 Save dataset to your own google drive\n","\n","Every time you restart colab, you don't have to reformat the data, you can just load the formatted data directly from this google drive."],"metadata":{"id":"a67Trw8LgCqo"}},{"cell_type":"code","source":["from google.colab import drive\n","drive.mount('/content/drive') #You'll be asked to authorize access to your Google Drive"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"hGlXnW9mf7qi","executionInfo":{"status":"ok","timestamp":1727634274367,"user_tz":240,"elapsed":31765,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"f625e017-521a-4ba4-9d66-c0fb556a5fbf"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}]},{"cell_type":"code","source":["save_path = '/content/drive/MyDrive/Colab Notebooks/AI4Finance/FinGPT/FinGPT: Training with LoRA and Llama-3/dataset_new' #Change to your own address\n","# Write your own Google drive saving address in xxxxxxxx part: '/content/drive/MyDrive/xxxxxxxxxxxxxxxxx/dataset_new'\n","dataset.save_to_disk(save_path)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","referenced_widgets":["08b1a8f1a78b43cc9fcadfbd62b8c640","0425b5a2fd4d43c7a5c23ce0d871c2bc","d195de0e6ae24554aae7dac017702aa6","925779e4950449468858202aea2e41c5","77c13a2147484f0ba7df11ebe2c3ed05","533cb8875d5244dda8e32d7cbc73ab30","50f8bac5cc714a07841576d2e68a1540","7e088ac4ea01438788ec74e036ba6aa4","e6a724f0076b465ea14da1c66c93514b","3ed33e39bd80437d855a878928198bbc","bcda59cdb6b44c468ec40f25db93e0ed"],"height":49},"id":"WgRQDWYUg3ft","executionInfo":{"status":"ok","timestamp":1727634425692,"user_tz":240,"elapsed":4101,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"62cf9d61-597d-4ffb-f810-ce4687aebf4a"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":["Saving the dataset (0/1 shards):   0%|          | 0/19086 [00:00<?, ? examples/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"08b1a8f1a78b43cc9fcadfbd62b8c640"}},"metadata":{}}]},{"cell_type":"markdown","source":["### 2.5 Load Dataset from google drive\n","\n","Runs directly from here every time you re-login or reconnect."],"metadata":{"id":"QsF548Xdh8mN"}},{"cell_type":"code","source":["from huggingface_hub import login\n","\n","\n","# Login directly with your Token (remember not to share this Token publicly)\n","login(token=hf_token)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"7NWI3s_5Eqme","executionInfo":{"status":"ok","timestamp":1727741485251,"user_tz":240,"elapsed":378,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"06b5e19f-baee-4153-cfba-67db35d42197"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["The token has not been saved to the git credentials helper. Pass `add_to_git_credential=True` in this function directly or `--add-to-git-credential` if using via `huggingface-cli` if you want to set the git credential as well.\n","Token is valid (permission: write).\n","Your token has been saved to /root/.cache/huggingface/token\n","Login successful\n"]}]},{"cell_type":"code","source":["!pip install datasets\n","from datasets import load_from_disk\n","from google.colab import drive\n","\n","drive.mount('/content/drive') #You'll be asked to authorize access to your Google Drive\n","\n","save_path = '/content/drive/MyDrive/Colab Notebooks/AI4Finance/FinGPT/FinGPT: Training with LoRA and Llama-3/dataset_new' #Change to your own address\n","# Load saved dataset\n","loaded_dataset = load_from_disk(save_path)"],"metadata":{"id":"Vo6-EMOAiCPp","executionInfo":{"status":"ok","timestamp":1727741286234,"user_tz":240,"elapsed":48213,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"colab":{"base_uri":"https://localhost:8080/"},"outputId":"4db9c05a-c028-4853-eb84-4984aa66236f"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting datasets\n","  Downloading datasets-3.0.1-py3-none-any.whl.metadata (20 kB)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from datasets) (3.16.1)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from datasets) (1.26.4)\n","Collecting pyarrow>=15.0.0 (from datasets)\n","  Downloading pyarrow-17.0.0-cp310-cp310-manylinux_2_28_x86_64.whl.metadata (3.3 kB)\n","Collecting dill<0.3.9,>=0.3.0 (from datasets)\n","  Downloading dill-0.3.8-py3-none-any.whl.metadata (10 kB)\n","Requirement already satisfied: pandas in /usr/local/lib/python3.10/dist-packages (from datasets) (2.1.4)\n","Requirement already satisfied: requests>=2.32.2 in /usr/local/lib/python3.10/dist-packages (from datasets) (2.32.3)\n","Requirement already satisfied: tqdm>=4.66.3 in /usr/local/lib/python3.10/dist-packages (from datasets) (4.66.5)\n","Collecting xxhash (from datasets)\n","  Downloading xxhash-3.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)\n","Collecting multiprocess (from datasets)\n","  Downloading multiprocess-0.70.17-py310-none-any.whl.metadata (7.2 kB)\n","Requirement already satisfied: fsspec<=2024.6.1,>=2023.1.0 in /usr/local/lib/python3.10/dist-packages (from fsspec[http]<=2024.6.1,>=2023.1.0->datasets) (2024.6.1)\n","Requirement already satisfied: aiohttp in /usr/local/lib/python3.10/dist-packages (from datasets) (3.10.5)\n","Requirement already satisfied: huggingface-hub>=0.22.0 in /usr/local/lib/python3.10/dist-packages (from datasets) (0.24.7)\n","Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from datasets) (24.1)\n","Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from datasets) (6.0.2)\n","Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (2.4.0)\n","Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.3.1)\n","Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (24.2.0)\n","Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.4.1)\n","Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (6.1.0)\n","Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.11.1)\n","Requirement already satisfied: async-timeout<5.0,>=4.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (4.0.3)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.22.0->datasets) (4.12.2)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (2024.8.30)\n","INFO: pip is looking at multiple versions of multiprocess to determine which version is compatible with other requirements. This could take a while.\n","  Downloading multiprocess-0.70.16-py310-none-any.whl.metadata (7.2 kB)\n","Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2.8.2)\n","Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2024.2)\n","Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2024.1)\n","Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas->datasets) (1.16.0)\n","Downloading datasets-3.0.1-py3-none-any.whl (471 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m471.6/471.6 kB\u001b[0m \u001b[31m8.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading dill-0.3.8-py3-none-any.whl (116 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m116.3/116.3 kB\u001b[0m \u001b[31m7.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pyarrow-17.0.0-cp310-cp310-manylinux_2_28_x86_64.whl (39.9 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m39.9/39.9 MB\u001b[0m \u001b[31m59.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading multiprocess-0.70.16-py310-none-any.whl (134 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m134.8/134.8 kB\u001b[0m \u001b[31m10.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading xxhash-3.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m194.1/194.1 kB\u001b[0m \u001b[31m13.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hInstalling collected packages: xxhash, pyarrow, dill, multiprocess, datasets\n","  Attempting uninstall: pyarrow\n","    Found existing installation: pyarrow 14.0.2\n","    Uninstalling pyarrow-14.0.2:\n","      Successfully uninstalled pyarrow-14.0.2\n","\u001b[31mERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.\n","cudf-cu12 24.4.1 requires pyarrow<15.0.0a0,>=14.0.1, but you have pyarrow 17.0.0 which is incompatible.\u001b[0m\u001b[31m\n","\u001b[0mSuccessfully installed datasets-3.0.1 dill-0.3.8 multiprocess-0.70.16 pyarrow-17.0.0 xxhash-3.5.0\n","Mounted at /content/drive\n"]}]},{"cell_type":"code","source":["# Check the structure of Dataset\n","print(loaded_dataset)\n","\n","# Print the first sample of the dataset\n","print(loaded_dataset['input_ids'][0])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"OgoD1tc4mhiT","executionInfo":{"status":"ok","timestamp":1727741290941,"user_tz":240,"elapsed":353,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"eafd6968-8cd4-4bda-d413-c4e7976d53e7"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Dataset({\n","    features: ['input_ids', 'seq_len'],\n","    num_rows: 19086\n","})\n","[128000, 17077, 25, 3923, 374, 279, 27065, 315, 420, 12072, 30, 5321, 5268, 459, 4320, 505, 314, 43324, 14, 60668, 14, 31587, 28374, 2566, 22444, 7842, 3378, 400, 20257, 52, 400, 38, 1950, 55, 482, 5745, 37630, 11, 32074, 52, 11, 10458, 323, 480, 20088, 4315, 17496, 54163, 96454, 3788, 1129, 83, 6973, 12598, 77, 376, 54, 23923, 24, 9810, 198, 16533, 25, 220, 60668, 128001]\n"]}]},{"cell_type":"markdown","source":["The output of this code block above should be:\n","\n","Dataset({\n","  \n","    features: ['input_ids', 'seq_len'],\n","\n","    num_rows: 19086\n","\n","})\n","\n","[128000, 17077, 25, 3923, 374, 279, 27065, 315, 420, 12072, 30, 5321, 5268, 459, 4320, 505, 314, 43324, 14, 60668, 14, 31587, 28374, 2566, 22444, 7842, 3378, 400, 20257, 52, 400, 38, 1950, 55, 482, 5745, 37630, 11, 32074, 52, 11, 10458, 323, 480, 20088, 4315, 17496, 54163, 96454, 3788, 1129, 83, 6973, 12598, 77, 376, 54, 23923, 24, 9810, 198, 16533, 25, 220, 60668, 128001]\n","\n","说明数据正确的被加载"],"metadata":{"id":"Ppd5PszSUQLs"}},{"cell_type":"markdown","source":["## Part 3: Setup FinGPT training with LoRA and Llama-3\n"],"metadata":{"id":"6e_SkszzBgOS"}},{"cell_type":"markdown","source":["### 3.1 Training Arguments Setup:\n","Initialize and set training arguments."],"metadata":{"id":"AWnNrvzXByt8"}},{"cell_type":"code","source":["!pip install accelerate\n","!pip install -U bitsandbytes\n","!pip install loguru\n","!pip install --upgrade peft\n","!pip install transformers==4.40.1"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"id":"heUtAghtDa1s","outputId":"3db9c61f-de86-4ed9-9f66-74aa0ea3fd93","executionInfo":{"status":"ok","timestamp":1727663619445,"user_tz":240,"elapsed":18478,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}}},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Requirement already satisfied: accelerate in /usr/local/lib/python3.10/dist-packages (0.34.2)\n","Requirement already satisfied: numpy<3.0.0,>=1.17 in /usr/local/lib/python3.10/dist-packages (from accelerate) (1.26.4)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (24.1)\n","Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from accelerate) (5.9.5)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from accelerate) (6.0.2)\n","Requirement already satisfied: torch>=1.10.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (2.4.1+cu121)\n","Requirement already satisfied: huggingface-hub>=0.21.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (0.24.7)\n","Requirement already satisfied: safetensors>=0.4.3 in /usr/local/lib/python3.10/dist-packages (from accelerate) (0.4.5)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (3.16.1)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (2024.6.1)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (2.32.3)\n","Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (4.66.5)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (3.1.4)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.10.0->accelerate) (2.1.5)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (2024.8.30)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.10.0->accelerate) (1.3.0)\n","Requirement already satisfied: bitsandbytes in /usr/local/lib/python3.10/dist-packages (0.44.0)\n","Requirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (from bitsandbytes) (2.4.1+cu121)\n","Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from bitsandbytes) (1.26.4)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (3.16.1)\n","Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (3.1.4)\n","Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (2024.6.1)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch->bitsandbytes) (2.1.5)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch->bitsandbytes) (1.3.0)\n","Requirement already satisfied: loguru in /usr/local/lib/python3.10/dist-packages (0.7.2)\n","Requirement already satisfied: peft in /usr/local/lib/python3.10/dist-packages (0.13.0)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from peft) (1.26.4)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from peft) (24.1)\n","Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from peft) (5.9.5)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from peft) (6.0.2)\n","Requirement already satisfied: torch>=1.13.0 in /usr/local/lib/python3.10/dist-packages (from peft) (2.4.1+cu121)\n","Requirement already satisfied: transformers in /usr/local/lib/python3.10/dist-packages (from peft) (4.30.2)\n","Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from peft) (4.66.5)\n","Requirement already satisfied: accelerate>=0.21.0 in /usr/local/lib/python3.10/dist-packages (from peft) (0.34.2)\n","Requirement already satisfied: safetensors in /usr/local/lib/python3.10/dist-packages (from peft) (0.4.5)\n","Requirement already satisfied: huggingface-hub>=0.17.0 in /usr/local/lib/python3.10/dist-packages (from peft) (0.24.7)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.17.0->peft) (3.16.1)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.17.0->peft) (2024.6.1)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.17.0->peft) (2.32.3)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.17.0->peft) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (3.1.4)\n","Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers->peft) (2024.9.11)\n","Requirement already satisfied: tokenizers!=0.11.3,<0.14,>=0.11.1 in /usr/local/lib/python3.10/dist-packages (from transformers->peft) (0.13.3)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.13.0->peft) (2.1.5)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.17.0->peft) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.17.0->peft) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.17.0->peft) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.17.0->peft) (2024.8.30)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.13.0->peft) (1.3.0)\n","Collecting transformers==4.40.1\n","  Using cached transformers-4.40.1-py3-none-any.whl.metadata (137 kB)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (3.16.1)\n","Requirement already satisfied: huggingface-hub<1.0,>=0.19.3 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (0.24.7)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (1.26.4)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (24.1)\n","Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (6.0.2)\n","Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (2024.9.11)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (2.32.3)\n","Collecting tokenizers<0.20,>=0.19 (from transformers==4.40.1)\n","  Using cached tokenizers-0.19.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n","Requirement already satisfied: safetensors>=0.4.1 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (0.4.5)\n","Requirement already satisfied: tqdm>=4.27 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (4.66.5)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.19.3->transformers==4.40.1) (2024.6.1)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.19.3->transformers==4.40.1) (4.12.2)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (2024.8.30)\n","Using cached transformers-4.40.1-py3-none-any.whl (9.0 MB)\n","Using cached tokenizers-0.19.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB)\n","Installing collected packages: tokenizers, transformers\n","  Attempting uninstall: tokenizers\n","    Found existing installation: tokenizers 0.13.3\n","    Uninstalling tokenizers-0.13.3:\n","      Successfully uninstalled tokenizers-0.13.3\n","  Attempting uninstall: transformers\n","    Found existing installation: transformers 4.30.2\n","    Uninstalling transformers-4.30.2:\n","      Successfully uninstalled transformers-4.30.2\n","Successfully installed tokenizers-0.19.1 transformers-4.40.1\n"]},{"output_type":"display_data","data":{"application/vnd.colab-display-data+json":{"pip_warning":{"packages":["transformers"]},"id":"c7102b135379415a95dd0bf7fdbc2664"}},"metadata":{}}]},{"cell_type":"code","source":["from typing import List, Dict, Optional\n","import torch\n","from loguru import logger\n","from transformers import (\n","    AutoModel,\n","    AutoTokenizer,\n","    TrainingArguments,\n","    Trainer,\n","    BitsAndBytesConfig,\n","    AutoModelForCausalLM\n",")\n","from peft import (\n","    TaskType,\n","    LoraConfig,\n","    get_peft_model,\n","    set_peft_model_state_dict,\n","    prepare_model_for_kbit_training,\n",")\n","from peft.utils import TRANSFORMERS_MODELS_TO_LORA_TARGET_MODULES_MAPPING\n","from transformers import LlamaForCausalLM"],"metadata":{"id":"PXSfDpGE5zQt"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["Note: This will report error with newest torch and CUDA version.\n","\n","is_bitsandbytes_available() will return False\n","\n"," and will show:\n","\n","ImportError: Using `load_in_8bit=True` requires Accelerate: `pip install accelerate` and the latest version of bitsandbytes `pip install -i https://test.pypi.org/simple/ bitsandbytes` or pip install bitsandbytes`  \n","\n"," in model loading part.\n","\n","Run\n","\n","!pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116\n","\n","first to adress the problem."],"metadata":{"id":"31CH3eehsKGG"}},{"cell_type":"code","source":["training_args = TrainingArguments(\n","    output_dir='/content/drive/MyDrive/Colab Notebooks/AI4Finance/FinGPT/FinGPT: Training with LoRA and Llama-3/finetuned_model/',    # Path to save the fine-tuned model\n","    logging_steps = 500,               # Log every 500 steps\n","    # max_steps=10000,                 # Maximum number of training steps (commented out, can be enabled)\n","    num_train_epochs = 2,              # Number of training epochs (train for 2 epochs)\n","    per_device_train_batch_size=4,     # Batch size of 4 for training on each device (GPU/CPU)\n","    gradient_accumulation_steps=8,     # Accumulate gradients for 8 steps before updating weights\n","    learning_rate=1e-4,                # Learning rate set to 1e-4\n","    weight_decay=0.01,                 # Weight decay (L2 regularization) set to 0.01\n","    warmup_steps=1000,                 # Warm up the learning rate for the first 1000 steps\n","    save_steps=500,                    # Save the model every 500 steps\n","    fp16=True,                         # Enable FP16 mixed precision training to save memory and speed up training\n","    # bf16=True,                       # Enable BF16 mixed precision training (commented out)\n","    torch_compile = False,             # Whether to enable Torch compile (`False` means not enabled)\n","    load_best_model_at_end = True,     # Load the best-performing model at the end of training\n","    evaluation_strategy=\"steps\",       # Evaluation strategy is set to evaluate every few steps\n","    remove_unused_columns=False,       # Whether to remove unused columns during training (keep all columns)\n",")\n"],"metadata":{"id":"dayPAldSVcZE"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["### 3.2 Quantization Config Setup:\n","Set quantization configuration to reduce model size without losing significant precision."],"metadata":{"id":"j63Nx-ssCG7a"}},{"cell_type":"code","source":["!pip list | grep bitsandbytes"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"A218CO6pi0nn","executionInfo":{"status":"ok","timestamp":1727659435829,"user_tz":240,"elapsed":1191,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"0bebcff9-6f43-4443-9bc3-c5ca4cb76e49"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["bitsandbytes                     0.44.0\n"]}]},{"cell_type":"code","source":["# quantitative allocation\n","q_config = BitsAndBytesConfig(load_in_4bit=False,\n","                                bnb_4bit_quant_type='nf4',\n","                                bnb_4bit_use_double_quant=True,\n","                                bnb_4bit_compute_dtype=torch.float16\n","                                )"],"metadata":{"id":"mDZbkv53BfnI"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["import os\n","os.environ['PYTORCH_CUDA_ALLOC_CONF'] = 'expandable_segments:True'"],"metadata":{"id":"vWyeniBRMhi1"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["### 3.3 Model Loading & Preparation:\n","Load the base model and tokenizer, and prepare the model for INT8 training.\n","\n","Runtime -> Change runtime type -> A100 GPU\n","\n","Restart runtime and run again if not working"],"metadata":{"id":"ERYZSwgBDkNc"}},{"cell_type":"code","source":["model_name = \"meta-llama/Meta-Llama-3-8B\"\n","tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"LQvQFY1vCeDm","executionInfo":{"status":"ok","timestamp":1727659444186,"user_tz":240,"elapsed":2124,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"8410908e-473a-41c7-cca7-78d0cb1d4254"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py:1150: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n","  warnings.warn(\n","/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_token.py:89: UserWarning: \n","The secret `HF_TOKEN` does not exist in your Colab secrets.\n","To authenticate with the Hugging Face Hub, create a token in your settings tab (https://huggingface.co/settings/tokens), set it as secret in your Google Colab and restart your session.\n","You will be able to reuse this secret in all of your notebooks.\n","Please note that authentication is recommended but still optional to access public models or datasets.\n","  warnings.warn(\n","Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n"]}]},{"cell_type":"code","source":["from transformers.utils import is_bitsandbytes_available\n","is_bitsandbytes_available()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"IiiQVcVxfet5","executionInfo":{"status":"ok","timestamp":1727659446926,"user_tz":240,"elapsed":463,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"f604877f-ad4d-4fed-ca7d-c7d08aee449d"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["True"]},"metadata":{},"execution_count":10}]},{"cell_type":"code","source":["model = LlamaForCausalLM.from_pretrained(\n","        model_name,\n","        quantization_config = q_config,\n","        trust_remote_code=True,\n","        device_map='auto'\n","    )"],"metadata":{"id":"1xHMJhS4EZnS","colab":{"base_uri":"https://localhost:8080/","height":123,"referenced_widgets":["accdc799fb984c06928a728fc83235f3","da4a447f614c4a7ab4ee0aa2866ce1d8","e94ff7ee9edc4732a15d1fe4ebdee452","cd57c5897c9146b2bb0882711636c186","d5cf4320251d4ef1a43f744ad057f9bc","fdd537bd5c214210892d8de2d6f36cde","9b4f67139c4e474fab9ff5f68841dd1e","098f37019be84aa0b9d9004ee02f6a8b","1d27c47dcffe4cb08e8b9f953ddd06e6","8ca9fc82ec214686bb9f89a950263b11","c827a177aeb84d6886baa707b55873aa"]},"executionInfo":{"status":"ok","timestamp":1727659543900,"user_tz":240,"elapsed":14138,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"05efe260-9850-4606-e330-e4b4bd997523"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["The argument `trust_remote_code` is to be used with Auto classes. It has no effect here and is ignored.\n","/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py:1150: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n","  warnings.warn(\n"]},{"output_type":"display_data","data":{"text/plain":["Loading checkpoint shards:   0%|          | 0/4 [00:00<?, ?it/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"accdc799fb984c06928a728fc83235f3"}},"metadata":{}}]},{"cell_type":"markdown","source":["### 3.4 LoRA Config & Setup"],"metadata":{"id":"oXh4hpVbss4t"}},{"cell_type":"code","source":[],"metadata":{"id":"r7DkLNHosssU"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["def print_trainable_parameters(model):\n","    \"\"\"\n","    Prints the number of trainable parameters in the model.\n","    \"\"\"\n","    trainable_params = 0\n","    all_param = 0\n","    for _, param in model.named_parameters():\n","        all_param += param.numel()\n","        if param.requires_grad:\n","            trainable_params += param.numel()\n","    print(\n","        f\"trainable params: {trainable_params} || all params: {all_param} || trainable%: {100 * trainable_params / all_param}\"\n","    )\n","\n","# LoRA for Llama3\n","target_modules = TRANSFORMERS_MODELS_TO_LORA_TARGET_MODULES_MAPPING['llama']  # Modules for the Llama model\n","lora_config = LoraConfig(\n","    task_type=TaskType.CAUSAL_LM,\n","    inference_mode=False,\n","    r=8,\n","    lora_alpha=32,\n","    lora_dropout=0.1,\n","    target_modules=target_modules,\n","    bias='none',\n",")\n","\n","# Loading LoRA for Llama3 models using PEFT (Parameter-Efficient Fine-Tuning)\n","model = get_peft_model(model, lora_config)\n","\n","# Print the number of trainable parameters\n","print_trainable_parameters(model)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"FFpy6LwrrB3Z","executionInfo":{"status":"ok","timestamp":1727659582086,"user_tz":240,"elapsed":335,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"05aae0e2-ac6b-49da-8e9d-053b88a717b2"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["trainable params: 3407872 || all params: 4544008192 || trainable%: 0.07499704789264605\n"]}]},{"cell_type":"code","source":["resume_from_checkpoint = None\n","if resume_from_checkpoint is not None:\n","    checkpoint_name = os.path.join(resume_from_checkpoint, 'pytorch_model.bin')\n","    if not os.path.exists(checkpoint_name):\n","        checkpoint_name = os.path.join(\n","            resume_from_checkpoint, 'adapter_model.bin'\n","        )\n","        resume_from_checkpoint = False\n","    if os.path.exists(checkpoint_name):\n","        logger.info(f'Restarting from {checkpoint_name}')\n","        adapters_weights = torch.load(checkpoint_name)\n","        set_peft_model_state_dict(model, adapters_weights)\n","    else:\n","        logger.info(f'Checkpoint {checkpoint_name} not found')"],"metadata":{"id":"8AwgMRgUxpjg"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["model.print_trainable_parameters()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"CAE5BPkyuit2","executionInfo":{"status":"ok","timestamp":1727659587313,"user_tz":240,"elapsed":338,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"7c5654e3-4492-42f4-8f9e-1f2dc8b5585d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["trainable params: 3,407,872 || all params: 8,033,669,120 || trainable%: 0.0424\n"]}]},{"cell_type":"markdown","source":["## Part 4: Loading Data and Training FinGPT\n","\n","\n","In this segment, we'll delve into the loading of your pre-processed data, and finally, launch the training of your FinGPT model. Here's a stepwise breakdown of the script provided:\n","\n","\n","\n","*   Need to purchase Google Colab GPU plans, Colab Pro is\n","sufficient or just buy 100 compute units for $10\n","\n"],"metadata":{"id":"eZswfZZ7utGZ"}},{"cell_type":"markdown","source":["### 4.1 Loading Your Data:"],"metadata":{"id":"r23RLTLWu99A"}},{"cell_type":"code","source":["# load data\n","from datasets import load_from_disk\n","import datasets\n","from google.colab import drive\n","\n","drive.mount('/content/drive') # You will be asked to authorize access to your Google Drive\n","\n","save_path = '/content/drive/MyDrive/Colab Notebooks/AI4Finance/FinGPT/FinGPT: Training with LoRA and Llama-3/dataset_new'\n","# Load saved dataset\n","dataset = load_from_disk(save_path)\n","dataset = dataset.train_test_split(0.2, shuffle=True, seed = 42)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Grl0YyGtul3W","executionInfo":{"status":"ok","timestamp":1727659594988,"user_tz":240,"elapsed":4665,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"3264cefd-f251-4ed8-ed19-f96467d9a359"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount(\"/content/drive\", force_remount=True).\n"]}]},{"cell_type":"markdown","source":["### 4.2 Training Configuration and Launch:\n","\n","\n","\n","*   Customize the Trainer class for specific loss computation, prediction step, and model-saving methods.\n","*   Define a data collator function to process batches of data during training.\n","*   Set up TensorBoard for logging, instantiate your modified trainer, and begin training.\n","\n","\n"],"metadata":{"id":"fSiYPVACvaFn"}},{"cell_type":"code","source":["import torch.nn.functional as F"],"metadata":{"id":"V9YOr0sRyRT-"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["def data_collator(features: list) -> dict:\n","    # Check if pad_token_id is None, if it is then use eos_token_id as the padding value\n","    if tokenizer.pad_token_id is None:\n","        pad_token_id = tokenizer.eos_token_id  # Use eos_token_id as a fill symbol\n","    else:\n","        pad_token_id = tokenizer.pad_token_id\n","\n","    len_ids = [len(feature[\"input_ids\"]) for feature in features]\n","    longest = max(len_ids)\n","\n","    input_ids = []\n","    labels_list = []\n","\n","    for ids_l, feature in sorted(zip(len_ids, features), key=lambda x: -x[0]):\n","        ids = feature[\"input_ids\"]\n","        seq_len = feature[\"seq_len\"]\n","\n","        # Padding with calculated pad_token_id\n","        labels = (\n","            [pad_token_id] * (seq_len - 1) + ids[(seq_len - 1) :] + [pad_token_id] * (longest - ids_l)\n","        )\n","        ids = ids + [pad_token_id] * (longest - ids_l)\n","\n","        _ids = torch.LongTensor(ids)\n","        labels_list.append(torch.LongTensor(labels))\n","        input_ids.append(_ids)\n","\n","    input_ids = torch.stack(input_ids)\n","    labels = torch.stack(labels_list)\n","\n","    return {\n","        \"input_ids\": input_ids,\n","        \"labels\": labels,\n","    }"],"metadata":{"id":"zZbPLxQt73vf"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["from torch.utils.tensorboard import SummaryWriter\n","from transformers.integrations import TensorBoardCallback"],"metadata":{"id":"QZfzIDH1vnDt"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Mount Google Drive\n","from google.colab import drive\n","drive.mount('/content/drive')\n","\n","# 创建保存路径\n","import os\n","\n","output_dir = '/content/drive/MyDrive/Colab Notebooks/AI4Finance/FinGPT/FinGPT: Training with LoRA and Llama-3/Model/' # Use your own address\n","os.makedirs(output_dir, exist_ok=True)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"8bHQI3jsw1rr","executionInfo":{"status":"ok","timestamp":1727659660074,"user_tz":240,"elapsed":1565,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"586ece69-b442-4b2a-9a9e-fe23155a76af"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount(\"/content/drive\", force_remount=True).\n"]}]},{"cell_type":"code","source":[],"metadata":{"id":"4bu-a9bf1gfx"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Train\n","# Took about 10 compute units\n","writer = SummaryWriter()\n","trainer = ModifiedTrainer(\n","    model=model,\n","    args=training_args,             # Trainer args\n","    train_dataset=dataset[\"train\"], # Training set\n","    eval_dataset=dataset[\"test\"],   # Testing set\n","    data_collator=data_collator,    # Data Collator\n","    callbacks=[TensorBoardCallback(writer)],\n",")\n","trainer.train()\n","writer.close()\n","\n","\n","# Save model to Google Drive\n","model.save_pretrained(output_dir)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":217},"id":"NxA4IK_fvxZW","executionInfo":{"status":"ok","timestamp":1727661996241,"user_tz":240,"elapsed":2145440,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"2f9cf8d0-01ac-425e-e588-2d4104ecb134"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["You are adding a <class 'transformers.integrations.integration_utils.TensorBoardCallback'> to the callbacks of this Trainer, but there is already one. The currentlist of callbacks is\n",":DefaultFlowCallback\n","TensorBoardCallback\n"]},{"output_type":"display_data","data":{"text/plain":["<IPython.core.display.HTML object>"],"text/html":["\n","    <div>\n","      \n","      <progress value='954' max='954' style='width:300px; height:20px; vertical-align: middle;'></progress>\n","      [954/954 35:40, Epoch 1/2]\n","    </div>\n","    <table border=\"1\" class=\"dataframe\">\n","  <thead>\n"," <tr style=\"text-align: left;\">\n","      <th>Step</th>\n","      <th>Training Loss</th>\n","      <th>Validation Loss</th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <td>500</td>\n","      <td>2.355200</td>\n","      <td>0.004615</td>\n","    </tr>\n","  </tbody>\n","</table><p>"]},"metadata":{}},{"output_type":"stream","name":"stderr","text":["/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py:1150: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n","  warnings.warn(\n"]}]},{"cell_type":"markdown","source":["Now your model is trained and saved! You can download it and use it for generating financial insights or any other relevant tasks in the finance domain. The usage of TensorBoard allows you to deeply understand and visualize the training dynamics and performance of your model in real-time."],"metadata":{"id":"_A3Ts9KQCQR2"}},{"cell_type":"markdown","source":["## Part 5: Inference and Benchmarks using FinGPT\n","\n","Now that your model is trained, let’s understand how to use it to infer and run benchmarks.\n","\n","\n","*   Took about 10 compute units\n","\n","\n"],"metadata":{"id":"_1CYlbFPZcwN"}},{"cell_type":"markdown","source":["### 5.1 Load the model"],"metadata":{"id":"QkKYdbVVatvg"}},{"cell_type":"code","source":["!pip install transformers==4.40.1 peft==0.4.0\n","!pip install sentencepiece\n","!pip install accelerate\n","!pip install torch\n","!pip install peft\n","!pip install datasets\n","!pip install bitsandbytes"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"AcAcMqwFCOaY","executionInfo":{"status":"ok","timestamp":1727742474271,"user_tz":240,"elapsed":25892,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"095f551d-c67e-42f2-ba41-29d69f90e5d1"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting transformers==4.40.1\n","  Downloading transformers-4.40.1-py3-none-any.whl.metadata (137 kB)\n","\u001b[?25l     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/138.0 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━\u001b[0m \u001b[32m133.1/138.0 kB\u001b[0m \u001b[31m5.1 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m138.0/138.0 kB\u001b[0m \u001b[31m3.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hRequirement already satisfied: peft==0.4.0 in /usr/local/lib/python3.10/dist-packages (0.4.0)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (3.16.1)\n","Requirement already satisfied: huggingface-hub<1.0,>=0.19.3 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (0.24.7)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (1.26.4)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (24.1)\n","Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (6.0.2)\n","Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (2024.9.11)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (2.32.3)\n","Collecting tokenizers<0.20,>=0.19 (from transformers==4.40.1)\n","  Using cached tokenizers-0.19.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n","Requirement already satisfied: safetensors>=0.4.1 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (0.4.5)\n","Requirement already satisfied: tqdm>=4.27 in /usr/local/lib/python3.10/dist-packages (from transformers==4.40.1) (4.66.5)\n","Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from peft==0.4.0) (5.9.5)\n","Requirement already satisfied: torch>=1.13.0 in /usr/local/lib/python3.10/dist-packages (from peft==0.4.0) (2.4.1+cu121)\n","Requirement already satisfied: accelerate in /usr/local/lib/python3.10/dist-packages (from peft==0.4.0) (0.34.2)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.19.3->transformers==4.40.1) (2024.6.1)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.19.3->transformers==4.40.1) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft==0.4.0) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft==0.4.0) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft==0.4.0) (3.1.4)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.40.1) (2024.8.30)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.13.0->peft==0.4.0) (2.1.5)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.13.0->peft==0.4.0) (1.3.0)\n","Downloading transformers-4.40.1-py3-none-any.whl (9.0 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m9.0/9.0 MB\u001b[0m \u001b[31m78.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hUsing cached tokenizers-0.19.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB)\n","Installing collected packages: tokenizers, transformers\n","  Attempting uninstall: tokenizers\n","    Found existing installation: tokenizers 0.13.3\n","    Uninstalling tokenizers-0.13.3:\n","      Successfully uninstalled tokenizers-0.13.3\n","  Attempting uninstall: transformers\n","    Found existing installation: transformers 4.30.2\n","    Uninstalling transformers-4.30.2:\n","      Successfully uninstalled transformers-4.30.2\n","Successfully installed tokenizers-0.19.1 transformers-4.40.1\n","Requirement already satisfied: sentencepiece in /usr/local/lib/python3.10/dist-packages (0.2.0)\n","Requirement already satisfied: accelerate in /usr/local/lib/python3.10/dist-packages (0.34.2)\n","Requirement already satisfied: numpy<3.0.0,>=1.17 in /usr/local/lib/python3.10/dist-packages (from accelerate) (1.26.4)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (24.1)\n","Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from accelerate) (5.9.5)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from accelerate) (6.0.2)\n","Requirement already satisfied: torch>=1.10.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (2.4.1+cu121)\n","Requirement already satisfied: huggingface-hub>=0.21.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (0.24.7)\n","Requirement already satisfied: safetensors>=0.4.3 in /usr/local/lib/python3.10/dist-packages (from accelerate) (0.4.5)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (3.16.1)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (2024.6.1)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (2.32.3)\n","Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (4.66.5)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.21.0->accelerate) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (3.1.4)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.10.0->accelerate) (2.1.5)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.21.0->accelerate) (2024.8.30)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.10.0->accelerate) (1.3.0)\n","Requirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (2.4.1+cu121)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch) (3.16.1)\n","Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch) (3.1.4)\n","Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch) (2024.6.1)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch) (2.1.5)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch) (1.3.0)\n","Requirement already satisfied: peft in /usr/local/lib/python3.10/dist-packages (0.4.0)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from peft) (1.26.4)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from peft) (24.1)\n","Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from peft) (5.9.5)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from peft) (6.0.2)\n","Requirement already satisfied: torch>=1.13.0 in /usr/local/lib/python3.10/dist-packages (from peft) (2.4.1+cu121)\n","Requirement already satisfied: transformers in /usr/local/lib/python3.10/dist-packages (from peft) (4.40.1)\n","Requirement already satisfied: accelerate in /usr/local/lib/python3.10/dist-packages (from peft) (0.34.2)\n","Requirement already satisfied: safetensors in /usr/local/lib/python3.10/dist-packages (from peft) (0.4.5)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (3.16.1)\n","Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (3.1.4)\n","Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->peft) (2024.6.1)\n","Requirement already satisfied: huggingface-hub>=0.21.0 in /usr/local/lib/python3.10/dist-packages (from accelerate->peft) (0.24.7)\n","Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers->peft) (2024.9.11)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from transformers->peft) (2.32.3)\n","Requirement already satisfied: tokenizers<0.20,>=0.19 in /usr/local/lib/python3.10/dist-packages (from transformers->peft) (0.19.1)\n","Requirement already satisfied: tqdm>=4.27 in /usr/local/lib/python3.10/dist-packages (from transformers->peft) (4.66.5)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.13.0->peft) (2.1.5)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->transformers->peft) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->transformers->peft) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->transformers->peft) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->transformers->peft) (2024.8.30)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.13.0->peft) (1.3.0)\n","Requirement already satisfied: datasets in /usr/local/lib/python3.10/dist-packages (3.0.1)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from datasets) (3.16.1)\n","Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from datasets) (1.26.4)\n","Requirement already satisfied: pyarrow>=15.0.0 in /usr/local/lib/python3.10/dist-packages (from datasets) (17.0.0)\n","Requirement already satisfied: dill<0.3.9,>=0.3.0 in /usr/local/lib/python3.10/dist-packages (from datasets) (0.3.8)\n","Requirement already satisfied: pandas in /usr/local/lib/python3.10/dist-packages (from datasets) (2.1.4)\n","Requirement already satisfied: requests>=2.32.2 in /usr/local/lib/python3.10/dist-packages (from datasets) (2.32.3)\n","Requirement already satisfied: tqdm>=4.66.3 in /usr/local/lib/python3.10/dist-packages (from datasets) (4.66.5)\n","Requirement already satisfied: xxhash in /usr/local/lib/python3.10/dist-packages (from datasets) (3.5.0)\n","Requirement already satisfied: multiprocess in /usr/local/lib/python3.10/dist-packages (from datasets) (0.70.16)\n","Requirement already satisfied: fsspec<=2024.6.1,>=2023.1.0 in /usr/local/lib/python3.10/dist-packages (from fsspec[http]<=2024.6.1,>=2023.1.0->datasets) (2024.6.1)\n","Requirement already satisfied: aiohttp in /usr/local/lib/python3.10/dist-packages (from datasets) (3.10.5)\n","Requirement already satisfied: huggingface-hub>=0.22.0 in /usr/local/lib/python3.10/dist-packages (from datasets) (0.24.7)\n","Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from datasets) (24.1)\n","Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from datasets) (6.0.2)\n","Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (2.4.0)\n","Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.3.1)\n","Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (24.2.0)\n","Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.4.1)\n","Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (6.1.0)\n","Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (1.11.1)\n","Requirement already satisfied: async-timeout<5.0,>=4.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets) (4.0.3)\n","Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.22.0->datasets) (4.12.2)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (3.10)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (2.2.3)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.32.2->datasets) (2024.8.30)\n","Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2.8.2)\n","Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2024.2)\n","Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets) (2024.1)\n","Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas->datasets) (1.16.0)\n","Requirement already satisfied: bitsandbytes in /usr/local/lib/python3.10/dist-packages (0.44.1)\n","Requirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (from bitsandbytes) (2.4.1+cu121)\n","Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from bitsandbytes) (1.26.4)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (3.16.1)\n","Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (4.12.2)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (1.13.3)\n","Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (3.3)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (3.1.4)\n","Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch->bitsandbytes) (2024.6.1)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch->bitsandbytes) (2.1.5)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch->bitsandbytes) (1.3.0)\n"]}]},{"cell_type":"code","source":["#clone the FinNLP repository\n","!git clone https://github.com/AI4Finance-Foundation/FinNLP.git\n","\n","\n","import sys\n","sys.path.append('/content/FinNLP/')"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"xNHIF4p3ZkOP","executionInfo":{"status":"ok","timestamp":1727742483360,"user_tz":240,"elapsed":262,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"f46d4413-bd5b-4282-e749-82fef55b0fb5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["fatal: destination path 'FinNLP' already exists and is not an empty directory.\n"]}]},{"cell_type":"code","source":["from transformers import AutoModel, AutoTokenizer, AutoModelForCausalLM, LlamaForCausalLM\n","from peft import PeftModel\n","import torch\n","\n","# Load benchmark datasets from FinNLP\n","from finnlp.benchmarks.fpb import test_fpb\n","from finnlp.benchmarks.fiqa import test_fiqa , add_instructions\n","from finnlp.benchmarks.tfns import test_tfns\n","from finnlp.benchmarks.nwgi import test_nwgi"],"metadata":{"id":"dJj4de4MayaT"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# load model from google drive\n","from google.colab import drive\n","drive.mount('/content/drive')"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"RNywAf87bAC1","executionInfo":{"status":"ok","timestamp":1727742525856,"user_tz":240,"elapsed":19170,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"a19a08f7-6ee0-42d5-9b05-0a4726f6049f"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}]},{"cell_type":"code","source":["import os\n","\n","# Fine-tuned PEFT model paths\n","path_to_check = '/content/drive/MyDrive/Colab Notebooks/AI4Finance/FinGPT/FinGPT: Training with LoRA and Llama-3/Model/'\n","\n","# Check if the specified path exists\n","if os.path.exists(path_to_check):\n","    print(\"Path exists.\")\n","else:\n","    print(\"Path does not exist.\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"m86kDGatbGxm","executionInfo":{"status":"ok","timestamp":1727742531322,"user_tz":240,"elapsed":854,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"b1d6b740-87c4-4a61-ec7b-0d094b5d32ea"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Path exists.\n"]}]},{"cell_type":"code","source":["from transformers import AutoModelForSequenceClassification"],"metadata":{"id":"GqUxf3d-bUWZ"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["from huggingface_hub import login\n","\n","# login into hf\n","login(token=hf_token)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"o-dNA3EybtqN","executionInfo":{"status":"ok","timestamp":1727742533208,"user_tz":240,"elapsed":274,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"dc31ada8-7139-4335-ca91-de331d10ab22"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["The token has not been saved to the git credentials helper. Pass `add_to_git_credential=True` in this function directly or `--add-to-git-credential` if using via `huggingface-cli` if you want to set the git credential as well.\n","Token is valid (permission: write).\n","Your token has been saved to /root/.cache/huggingface/token\n","Login successful\n"]}]},{"cell_type":"code","source":["\n","def eval_with_PEFT_model(base_model,peft_model):\n","\n","\n","  # Loda tokenizer\n","  tokenizer = AutoTokenizer.from_pretrained(base_model, trust_remote_code=True)\n","  tokenizer.pad_token = tokenizer.eos_token  # Use eos_token as pad_token\n","  tokenizer.padding_side = 'left'  # Important: Set as left padding\n","\n","\n","  model = LlamaForCausalLM.from_pretrained(base_model,\n","                                          trust_remote_code=True,\n","                                          load_in_8bit=True,\n","                                          device_map=\"cuda:0\")  #Set the model to GPU\n","\n","  # load peft's fine-tuned model weights\n","  model = PeftModel.from_pretrained(model, peft_model)\n","\n","  return model.eval(), tokenizer"],"metadata":{"id":"XsNiNkdVa6JW"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["base_model = \"meta-llama/Meta-Llama-3-8B\" # Loading the Llama base model and supporting text-generated models\n","peft_model = path_to_check  # Fine-tuned PEFT model paths\n","\n","model,tokenizer = eval_with_PEFT_model(base_model,peft_model)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":135,"referenced_widgets":["256e4d08479e44cea312bc61f5df3e65","9de3f80680ea4e068103f4f54763888b","8cefc7bb2af64ce68749eae8faf0735d","e96202e3af654c328cb39b5c2931624e","08ebbf44bcb545ad92eef0f6df938782","c82035139f974912b39fc19a16749abc","169212d00c5e4a94b9741ff39ab8a517","78a1ce26130240fdb730c3e1972566e9","26422841e84d4af9816b2bf29dc9d253","f7a1c8d0c9bf412d8ce43c7873bd1b97","a90c70e22d344674a8440b036101d9c5","7d886b5f22c545d0bdd23d345f530661","31e79afb3c9a4af1948bda9f7eb75aac","cdc4e75a547d42ea8384f4d2bec59197","a18fc50e4dfb4c14866ad85836455800","9cac43448fba448c8c9c38e8aa66ecae","fbe7b46555284c7cbde120ee3e8b92c6","5dd0b638f97742b1ab5c32021b0f9097","81ddc58c72b6451ea29c47c48c18c6c9","5e30c83d7900483a8d05500e98411e04","46596104a92a4328899496b305d36932","643e36f1ab674c9cb0d1e407e65170b4"]},"id":"9TFfD-mIcath","executionInfo":{"status":"ok","timestamp":1727744821407,"user_tz":240,"elapsed":77462,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"b5c63ba5-b52d-4274-fdb5-290f99e194f8"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n","The argument `trust_remote_code` is to be used with Auto classes. It has no effect here and is ignored.\n","The `load_in_4bit` and `load_in_8bit` arguments are deprecated and will be removed in the future versions. Please, pass a `BitsAndBytesConfig` object in `quantization_config` argument instead.\n"]},{"output_type":"display_data","data":{"text/plain":["Loading checkpoint shards:   0%|          | 0/4 [00:00<?, ?it/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"256e4d08479e44cea312bc61f5df3e65"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["generation_config.json:   0%|          | 0.00/177 [00:00<?, ?B/s]"],"application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"7d886b5f22c545d0bdd23d345f530661"}},"metadata":{}}]},{"cell_type":"markdown","source":["Compar with FinGPT/fingpt-mt_llama2-7b_lora"],"metadata":{"id":"sdcRSxhVfXZq"}},{"cell_type":"markdown","source":["### 5.2 Run Benchmarks:"],"metadata":{"id":"QrIUPQZkwja-"}},{"cell_type":"code","source":["batch_size = 8\n","import logging\n","logging.getLogger(\"transformers\").setLevel(logging.ERROR)"],"metadata":{"id":"1csFBRoWdLk3"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# TFNS Test Set, len 2388\n","# Available: 99.4 compute units\n","res_tfns = test_tfns(model, tokenizer, batch_size = batch_size)\n","# Available: 98.9 compute units\n","# Took about 0.5 compute unite to inference"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"6CbIRbcAwnkN","executionInfo":{"status":"ok","timestamp":1727745609942,"user_tz":240,"elapsed":175198,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"177e14e3-532f-4225-b031-d92fd908a6dd"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","\n","Prompt example:\n","Instruction: What is the sentiment of this tweet? Please choose an answer from {negative/neutral/positive}.\n","Input: $ALLY - Ally Financial pulls outlook https://t.co/G9Zdi1boy5\n","Answer: \n","\n","\n","Total len: 2388. Batchsize: 8. Total steps: 299\n"]},{"output_type":"stream","name":"stderr","text":["100%|██████████| 299/299 [02:54<00:00,  1.72it/s]"]},{"output_type":"stream","name":"stdout","text":["Acc: 0.8722780569514238. F1 macro: 0.8402673886325015. F1 micro: 0.8722780569514238. F1 weighted (BloombergGPT): 0.8720658580768996. \n"]},{"output_type":"stream","name":"stderr","text":["\n"]}]},{"cell_type":"markdown","source":["\n","These data are the results from the first time I evaluated the model, and there will be a slight difference in the results from each evaluation\n","\n","\n","\n","Acc: 0.8693467336683417.\n","\n"," F1 macro: 0.8359552714052252.\n","\n","  F1 micro: 0.8693467336683417.\n","  \n","   F1 weighted (BloombergGPT): 0.8687621695747597."],"metadata":{"id":"H5AmR-3kyxRR"}},{"cell_type":"code","source":["# FPB, len 1212\n","res_fpb = test_fpb(model, tokenizer, batch_size = batch_size)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"w7GBlylwwpxu","executionInfo":{"status":"ok","timestamp":1727745403664,"user_tz":240,"elapsed":93913,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"64397edb-099d-4920-ae2c-4002df5c72d1"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","\n","Prompt example:\n","Instruction: What is the sentiment of this news? Please choose an answer from {negative/neutral/positive}.\n","Input: L&T has also made a commitment to redeem the remaining shares by the end of 2011 .\n","Answer: \n","\n","\n","Total len: 1212. Batchsize: 8. Total steps: 152\n"]},{"output_type":"stream","name":"stderr","text":["100%|██████████| 152/152 [01:32<00:00,  1.65it/s]"]},{"output_type":"stream","name":"stdout","text":["Acc: 0.7962046204620462. F1 macro: 0.773422931317668. F1 micro: 0.7962046204620462. F1 weighted (BloombergGPT): 0.7893973143842868. \n"]},{"output_type":"stream","name":"stderr","text":["\n"]}]},{"cell_type":"markdown","source":["These data are the results from the first time I evaluated the model, and there will be a slight difference in the results from each evaluation\n","\n","Acc: 0.7871287128712872.\n","\n"," F1 macro: 0.7579588995487127.\n","\n","  F1 micro: 0.7871287128712872.\n","  \n","   F1 weighted (BloombergGPT): 0.7800606607353107."],"metadata":{"id":"4TvQ22ZTza8F"}},{"cell_type":"code","source":["# FiQA, len 275\n","res_fiqa = test_fiqa(model, tokenizer, prompt_fun = add_instructions, batch_size = batch_size)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"PG8Ke2Hvy7sv","executionInfo":{"status":"ok","timestamp":1727747926356,"user_tz":240,"elapsed":21528,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"29acfde9-056c-4d40-bf3b-5bf4a2ef8df1"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","\n","Prompt example:\n","Instruction: What is the sentiment of this tweet? Please choose an answer from {negative/neutral/positive}.\n","Input: This $BBBY stock options trade would have more than doubled your money https://t.co/Oa0loiRIJL via @TheStreet\n","Answer: \n","\n","\n","Total len: 275. Batchsize: 8. Total steps: 35\n"]},{"output_type":"stream","name":"stderr","text":["100%|██████████| 35/35 [00:20<00:00,  1.70it/s]"]},{"output_type":"stream","name":"stdout","text":["Acc: 0.5709090909090909. F1 macro: 0.5521739781521845. F1 micro: 0.5709090909090909. F1 weighted (BloombergGPT): 0.6595857369778902. \n"]},{"output_type":"stream","name":"stderr","text":["\n"]}]},{"cell_type":"markdown","source":["These data are the results from the first time I evaluated the model, and there will be a slight difference in the results from each evaluation\n","\n","Note: Because this test set is small, there may be a 5% difference in the results of each evaluation (which will fluctuate to a greater degree than the other three)\n","\n","Acc: 0.5927272727272728.\n","\n","F1 macro: 0.5671120555501894.\n","\n","F1 micro: 0.5927272727272728.\n","\n","F1 weighted (BloombergGPT): 0.6808921202754874."],"metadata":{"id":"4ntB5YJgztng"}},{"cell_type":"code","source":["# NWGI, len 4047\n","res_nwgi = test_nwgi(model, tokenizer, batch_size = batch_size)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"_8XHeX3ozjt9","executionInfo":{"status":"ok","timestamp":1727746027487,"user_tz":240,"elapsed":306378,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"435075a9-7bc9-43af-93f4-751b3aeca9d3"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","\n","Prompt example:\n","Instruction: What is the sentiment of this news? Please choose an answer from {negative/neutral/positive}.\n","Input: In the latest trading session, Adobe Systems (ADBE) closed at $535.98, marking a +0.31% move from the previous day.\n","Answer: \n","\n","\n","Total len: 4047. Batchsize: 8. Total steps: 506\n"]},{"output_type":"stream","name":"stderr","text":["100%|██████████| 506/506 [05:05<00:00,  1.66it/s]"]},{"output_type":"stream","name":"stdout","text":["Acc: 0.6073634791203361. F1 macro: 0.6156173294062645. F1 micro: 0.6073634791203361. F1 weighted (BloombergGPT): 0.607180032313506. \n"]},{"output_type":"stream","name":"stderr","text":["\n"]}]},{"cell_type":"markdown","source":["Acc: 0.6085989621942179.\n","\n"," F1 macro: 0.6165752620869043.\n","\n","  F1 micro: 0.6085989621942179.\n","  \n","   F1 weighted (BloombergGPT): 0.6087071466135167."],"metadata":{"id":"k3lGAkIL1E20"}},{"cell_type":"code","source":["res_nwgi\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":423},"id":"0HhRo1BDsynA","executionInfo":{"status":"ok","timestamp":1727746369308,"user_tz":240,"elapsed":138,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"191ea0fd-fba7-4816-a17a-4869855d7451"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["                                                  input    output  \\\n","0     In the latest trading session, Adobe Systems (...   neutral   \n","1     Tech stocks are down today after an antitrust ...  negative   \n","2     Intel Corp is committing $20 billion to build ...  positive   \n","3     High costs and supply chain disruptions are li...  negative   \n","4     AMD still seems set to generate significant gr...  positive   \n","...                                                 ...       ...   \n","4042  Amazon.com Inc. AMZN, +1.08% has proposed on T...  negative   \n","4043  Not everyone has thousands of dollars on hand ...   neutral   \n","4044  Amazon has delivered strong advertising growth...  positive   \n","4045  U.S. chip manufacturer SkyWater Technology Inc...  positive   \n","4046  NVIDIA Corporation (NASDAQ: NVDA) shares are t...  negative   \n","\n","                                            instruction  \\\n","0     What is the sentiment of this news? Please cho...   \n","1     What is the sentiment of this news? Please cho...   \n","2     What is the sentiment of this news? Please cho...   \n","3     What is the sentiment of this news? Please cho...   \n","4     What is the sentiment of this news? Please cho...   \n","...                                                 ...   \n","4042  What is the sentiment of this news? Please cho...   \n","4043  What is the sentiment of this news? Please cho...   \n","4044  What is the sentiment of this news? Please cho...   \n","4045  What is the sentiment of this news? Please cho...   \n","4046  What is the sentiment of this news? Please cho...   \n","\n","                                                context    target  \\\n","0     Instruction: What is the sentiment of this new...   neutral   \n","1     Instruction: What is the sentiment of this new...  negative   \n","2     Instruction: What is the sentiment of this new...  positive   \n","3     Instruction: What is the sentiment of this new...  negative   \n","4     Instruction: What is the sentiment of this new...  positive   \n","...                                                 ...       ...   \n","4042  Instruction: What is the sentiment of this new...  negative   \n","4043  Instruction: What is the sentiment of this new...   neutral   \n","4044  Instruction: What is the sentiment of this new...  positive   \n","4045  Instruction: What is the sentiment of this new...  positive   \n","4046  Instruction: What is the sentiment of this new...  negative   \n","\n","                     out_text new_target   new_out  \n","0      neutral<|end_of_text|>    neutral   neutral  \n","1     Negative<|end_of_text|>   negative  negative  \n","2     Positive<|end_of_text|>   positive  positive  \n","3     negative<|end_of_text|>   negative  negative  \n","4     positive<|end_of_text|>   positive  positive  \n","...                       ...        ...       ...  \n","4042   Neutral<|end_of_text|>   negative   neutral  \n","4043  Positive<|end_of_text|>    neutral  positive  \n","4044  Positive<|end_of_text|>   positive  positive  \n","4045  Positive<|end_of_text|>   positive  positive  \n","4046  Negative<|end_of_text|>   negative  negative  \n","\n","[4047 rows x 8 columns]"],"text/html":["\n","  <div id=\"df-0ba4bd61-e36f-40e1-b609-89e261c669d7\" class=\"colab-df-container\">\n","    <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th></th>\n","      <th>input</th>\n","      <th>output</th>\n","      <th>instruction</th>\n","      <th>context</th>\n","      <th>target</th>\n","      <th>out_text</th>\n","      <th>new_target</th>\n","      <th>new_out</th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>0</th>\n","      <td>In the latest trading session, Adobe Systems (...</td>\n","      <td>neutral</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>neutral</td>\n","      <td>neutral&lt;|end_of_text|&gt;</td>\n","      <td>neutral</td>\n","      <td>neutral</td>\n","    </tr>\n","    <tr>\n","      <th>1</th>\n","      <td>Tech stocks are down today after an antitrust ...</td>\n","      <td>negative</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>negative</td>\n","      <td>Negative&lt;|end_of_text|&gt;</td>\n","      <td>negative</td>\n","      <td>negative</td>\n","    </tr>\n","    <tr>\n","      <th>2</th>\n","      <td>Intel Corp is committing $20 billion to build ...</td>\n","      <td>positive</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>positive</td>\n","      <td>Positive&lt;|end_of_text|&gt;</td>\n","      <td>positive</td>\n","      <td>positive</td>\n","    </tr>\n","    <tr>\n","      <th>3</th>\n","      <td>High costs and supply chain disruptions are li...</td>\n","      <td>negative</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>negative</td>\n","      <td>negative&lt;|end_of_text|&gt;</td>\n","      <td>negative</td>\n","      <td>negative</td>\n","    </tr>\n","    <tr>\n","      <th>4</th>\n","      <td>AMD still seems set to generate significant gr...</td>\n","      <td>positive</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>positive</td>\n","      <td>positive&lt;|end_of_text|&gt;</td>\n","      <td>positive</td>\n","      <td>positive</td>\n","    </tr>\n","    <tr>\n","      <th>...</th>\n","      <td>...</td>\n","      <td>...</td>\n","      <td>...</td>\n","      <td>...</td>\n","      <td>...</td>\n","      <td>...</td>\n","      <td>...</td>\n","      <td>...</td>\n","    </tr>\n","    <tr>\n","      <th>4042</th>\n","      <td>Amazon.com Inc. AMZN, +1.08% has proposed on T...</td>\n","      <td>negative</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>negative</td>\n","      <td>Neutral&lt;|end_of_text|&gt;</td>\n","      <td>negative</td>\n","      <td>neutral</td>\n","    </tr>\n","    <tr>\n","      <th>4043</th>\n","      <td>Not everyone has thousands of dollars on hand ...</td>\n","      <td>neutral</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>neutral</td>\n","      <td>Positive&lt;|end_of_text|&gt;</td>\n","      <td>neutral</td>\n","      <td>positive</td>\n","    </tr>\n","    <tr>\n","      <th>4044</th>\n","      <td>Amazon has delivered strong advertising growth...</td>\n","      <td>positive</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>positive</td>\n","      <td>Positive&lt;|end_of_text|&gt;</td>\n","      <td>positive</td>\n","      <td>positive</td>\n","    </tr>\n","    <tr>\n","      <th>4045</th>\n","      <td>U.S. chip manufacturer SkyWater Technology Inc...</td>\n","      <td>positive</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>positive</td>\n","      <td>Positive&lt;|end_of_text|&gt;</td>\n","      <td>positive</td>\n","      <td>positive</td>\n","    </tr>\n","    <tr>\n","      <th>4046</th>\n","      <td>NVIDIA Corporation (NASDAQ: NVDA) shares are t...</td>\n","      <td>negative</td>\n","      <td>What is the sentiment of this news? Please cho...</td>\n","      <td>Instruction: What is the sentiment of this new...</td>\n","      <td>negative</td>\n","      <td>Negative&lt;|end_of_text|&gt;</td>\n","      <td>negative</td>\n","      <td>negative</td>\n","    </tr>\n","  </tbody>\n","</table>\n","<p>4047 rows × 8 columns</p>\n","</div>\n","    <div class=\"colab-df-buttons\">\n","\n","  <div class=\"colab-df-container\">\n","    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-0ba4bd61-e36f-40e1-b609-89e261c669d7')\"\n","            title=\"Convert this dataframe to an interactive table.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n","    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n","  </svg>\n","    </button>\n","\n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    .colab-df-buttons div {\n","      margin-bottom: 4px;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","    <script>\n","      const buttonEl =\n","        document.querySelector('#df-0ba4bd61-e36f-40e1-b609-89e261c669d7 button.colab-df-convert');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      async function convertToInteractive(key) {\n","        const element = document.querySelector('#df-0ba4bd61-e36f-40e1-b609-89e261c669d7');\n","        const dataTable =\n","          await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                    [key], {});\n","        if (!dataTable) return;\n","\n","        const docLinkHtml = 'Like what you see? Visit the ' +\n","          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","          + ' to learn more about interactive tables.';\n","        element.innerHTML = '';\n","        dataTable['output_type'] = 'display_data';\n","        await google.colab.output.renderOutput(dataTable, element);\n","        const docLink = document.createElement('div');\n","        docLink.innerHTML = docLinkHtml;\n","        element.appendChild(docLink);\n","      }\n","    </script>\n","  </div>\n","\n","\n","<div id=\"df-0885ae01-b311-433e-a4c8-b267e46b4075\">\n","  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-0885ae01-b311-433e-a4c8-b267e46b4075')\"\n","            title=\"Suggest charts\"\n","            style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","     width=\"24px\">\n","    <g>\n","        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n","    </g>\n","</svg>\n","  </button>\n","\n","<style>\n","  .colab-df-quickchart {\n","      --bg-color: #E8F0FE;\n","      --fill-color: #1967D2;\n","      --hover-bg-color: #E2EBFA;\n","      --hover-fill-color: #174EA6;\n","      --disabled-fill-color: #AAA;\n","      --disabled-bg-color: #DDD;\n","  }\n","\n","  [theme=dark] .colab-df-quickchart {\n","      --bg-color: #3B4455;\n","      --fill-color: #D2E3FC;\n","      --hover-bg-color: #434B5C;\n","      --hover-fill-color: #FFFFFF;\n","      --disabled-bg-color: #3B4455;\n","      --disabled-fill-color: #666;\n","  }\n","\n","  .colab-df-quickchart {\n","    background-color: var(--bg-color);\n","    border: none;\n","    border-radius: 50%;\n","    cursor: pointer;\n","    display: none;\n","    fill: var(--fill-color);\n","    height: 32px;\n","    padding: 0;\n","    width: 32px;\n","  }\n","\n","  .colab-df-quickchart:hover {\n","    background-color: var(--hover-bg-color);\n","    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n","    fill: var(--button-hover-fill-color);\n","  }\n","\n","  .colab-df-quickchart-complete:disabled,\n","  .colab-df-quickchart-complete:disabled:hover {\n","    background-color: var(--disabled-bg-color);\n","    fill: var(--disabled-fill-color);\n","    box-shadow: none;\n","  }\n","\n","  .colab-df-spinner {\n","    border: 2px solid var(--fill-color);\n","    border-color: transparent;\n","    border-bottom-color: var(--fill-color);\n","    animation:\n","      spin 1s steps(1) infinite;\n","  }\n","\n","  @keyframes spin {\n","    0% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","      border-left-color: var(--fill-color);\n","    }\n","    20% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    30% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","      border-right-color: var(--fill-color);\n","    }\n","    40% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    60% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","    }\n","    80% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-bottom-color: var(--fill-color);\n","    }\n","    90% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","    }\n","  }\n","</style>\n","\n","  <script>\n","    async function quickchart(key) {\n","      const quickchartButtonEl =\n","        document.querySelector('#' + key + ' button');\n","      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n","      quickchartButtonEl.classList.add('colab-df-spinner');\n","      try {\n","        const charts = await google.colab.kernel.invokeFunction(\n","            'suggestCharts', [key], {});\n","      } catch (error) {\n","        console.error('Error during call to suggestCharts:', error);\n","      }\n","      quickchartButtonEl.classList.remove('colab-df-spinner');\n","      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n","    }\n","    (() => {\n","      let quickchartButtonEl =\n","        document.querySelector('#df-0885ae01-b311-433e-a4c8-b267e46b4075 button');\n","      quickchartButtonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","    })();\n","  </script>\n","</div>\n","\n","  <div id=\"id_e44b68b8-8a20-4ecf-8f9a-25f5e5f79088\">\n","    <style>\n","      .colab-df-generate {\n","        background-color: #E8F0FE;\n","        border: none;\n","        border-radius: 50%;\n","        cursor: pointer;\n","        display: none;\n","        fill: #1967D2;\n","        height: 32px;\n","        padding: 0 0 0 0;\n","        width: 32px;\n","      }\n","\n","      .colab-df-generate:hover {\n","        background-color: #E2EBFA;\n","        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","        fill: #174EA6;\n","      }\n","\n","      [theme=dark] .colab-df-generate {\n","        background-color: #3B4455;\n","        fill: #D2E3FC;\n","      }\n","\n","      [theme=dark] .colab-df-generate:hover {\n","        background-color: #434B5C;\n","        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","        fill: #FFFFFF;\n","      }\n","    </style>\n","    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('res_nwgi')\"\n","            title=\"Generate code using this dataframe.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n","  </svg>\n","    </button>\n","    <script>\n","      (() => {\n","      const buttonEl =\n","        document.querySelector('#id_e44b68b8-8a20-4ecf-8f9a-25f5e5f79088 button.colab-df-generate');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      buttonEl.onclick = () => {\n","        google.colab.notebook.generateWithVariable('res_nwgi');\n","      }\n","      })();\n","    </script>\n","  </div>\n","\n","    </div>\n","  </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"res_nwgi","summary":"{\n  \"name\": \"res_nwgi\",\n  \"rows\": 4047,\n  \"fields\": [\n    {\n      \"column\": \"input\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 4047,\n        \"samples\": [\n          \"An Apple retail store in the Cumberland Mall in Atlanta, Georgia, has filed for a union election.\",\n          \"The ad-tech stock you want to own in a recession.\",\n          \"In light of increasing geopolitical turmoil across the globe, five tech stocks with high profitability, high guru ownership and are trading at fair GF Values are Microsoft Corp. ( MSFT , Financial), Adobe Inc. ( ADBE , Financial), Salesforce.com Inc. ( CRM , Financial), Intuit Inc. ( INTU , Financial) and Accenture PLC ( ACN , Financial) according to the All-in-One Screener, a Premium feature of GuruFocus.\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"output\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 3,\n        \"samples\": [\n          \"neutral\",\n          \"negative\",\n          \"positive\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"instruction\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 1,\n        \"samples\": [\n          \"What is the sentiment of this news? Please choose an answer from {negative/neutral/positive}.\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"context\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 4047,\n        \"samples\": [\n          \"Instruction: What is the sentiment of this news? Please choose an answer from {negative/neutral/positive}.\\nInput: An Apple retail store in the Cumberland Mall in Atlanta, Georgia, has filed for a union election.\\nAnswer: \"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"target\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 3,\n        \"samples\": [\n          \"neutral\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"out_text\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 28,\n        \"samples\": [\n          \"neutral<|end_of_text|><|end_of_text|>\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"new_target\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 3,\n        \"samples\": [\n          \"neutral\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"new_out\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 3,\n        \"samples\": [\n          \"neutral\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"}},"metadata":{},"execution_count":41}]},{"cell_type":"code","source":["from sklearn.metrics import accuracy_score,f1_score\n","import pandas as pd\n","import matplotlib.pyplot as plt"],"metadata":{"id":"I6M4YlXHu9yk"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["def get_score(df):\n","\n","  accuracy = accuracy_score(df['target'], df['new_out'])\n","\n","  f1_macro = f1_score(df['target'], df['new_out'], average='macro')\n","\n","  f1_weighted = f1_score(df['target'], df['new_out'], average='weighted')\n","\n","  return round(accuracy,3), round(f1_macro,3), round(f1_weighted,3)\n","\n","\n","def form_socre_dic(dataset_name):\n","  score_list = get_score(dataset_name)\n","\n","  score_dic = {\n","        'Accuracy': score_list[0],\n","        'F1_macro': score_list[1],\n","        'F1_weighted': score_list[2]\n","  }\n","\n","  return score_dic"],"metadata":{"id":"ED-epz7wuDxg"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["  score_dic = {\n","        'TFNS': form_socre_dic(res_tfns),\n","        'FPB': form_socre_dic(res_fpb),\n","        'FIQA': form_socre_dic(res_fiqa),\n","        'NWGI': form_socre_dic(res_nwgi)\n","  }"],"metadata":{"id":"QA3GtHIXvseL"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":[],"metadata":{"id":"Tg52V22L020J"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["pd.DataFrame(score_dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":143},"id":"ySWEBjsTvbqE","executionInfo":{"status":"ok","timestamp":1727748289453,"user_tz":240,"elapsed":194,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"263bd2ff-2ba7-4bab-f4af-ef6f6576c8a8"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["              TFNS    FPB   FIQA   NWGI\n","Accuracy     0.872  0.796  0.571  0.607\n","F1_macro     0.840  0.773  0.552  0.616\n","F1_weighted  0.872  0.789  0.660  0.607"],"text/html":["\n","  <div id=\"df-4154a98e-ac01-4ab0-87dd-b7b0239e09a5\" class=\"colab-df-container\">\n","    <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th></th>\n","      <th>TFNS</th>\n","      <th>FPB</th>\n","      <th>FIQA</th>\n","      <th>NWGI</th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>Accuracy</th>\n","      <td>0.872</td>\n","      <td>0.796</td>\n","      <td>0.571</td>\n","      <td>0.607</td>\n","    </tr>\n","    <tr>\n","      <th>F1_macro</th>\n","      <td>0.840</td>\n","      <td>0.773</td>\n","      <td>0.552</td>\n","      <td>0.616</td>\n","    </tr>\n","    <tr>\n","      <th>F1_weighted</th>\n","      <td>0.872</td>\n","      <td>0.789</td>\n","      <td>0.660</td>\n","      <td>0.607</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","    <div class=\"colab-df-buttons\">\n","\n","  <div class=\"colab-df-container\">\n","    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-4154a98e-ac01-4ab0-87dd-b7b0239e09a5')\"\n","            title=\"Convert this dataframe to an interactive table.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n","    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n","  </svg>\n","    </button>\n","\n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    .colab-df-buttons div {\n","      margin-bottom: 4px;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","    <script>\n","      const buttonEl =\n","        document.querySelector('#df-4154a98e-ac01-4ab0-87dd-b7b0239e09a5 button.colab-df-convert');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      async function convertToInteractive(key) {\n","        const element = document.querySelector('#df-4154a98e-ac01-4ab0-87dd-b7b0239e09a5');\n","        const dataTable =\n","          await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                    [key], {});\n","        if (!dataTable) return;\n","\n","        const docLinkHtml = 'Like what you see? Visit the ' +\n","          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","          + ' to learn more about interactive tables.';\n","        element.innerHTML = '';\n","        dataTable['output_type'] = 'display_data';\n","        await google.colab.output.renderOutput(dataTable, element);\n","        const docLink = document.createElement('div');\n","        docLink.innerHTML = docLinkHtml;\n","        element.appendChild(docLink);\n","      }\n","    </script>\n","  </div>\n","\n","\n","<div id=\"df-c2e08eee-8133-4b59-8f67-12ff9956d6d1\">\n","  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-c2e08eee-8133-4b59-8f67-12ff9956d6d1')\"\n","            title=\"Suggest charts\"\n","            style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","     width=\"24px\">\n","    <g>\n","        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n","    </g>\n","</svg>\n","  </button>\n","\n","<style>\n","  .colab-df-quickchart {\n","      --bg-color: #E8F0FE;\n","      --fill-color: #1967D2;\n","      --hover-bg-color: #E2EBFA;\n","      --hover-fill-color: #174EA6;\n","      --disabled-fill-color: #AAA;\n","      --disabled-bg-color: #DDD;\n","  }\n","\n","  [theme=dark] .colab-df-quickchart {\n","      --bg-color: #3B4455;\n","      --fill-color: #D2E3FC;\n","      --hover-bg-color: #434B5C;\n","      --hover-fill-color: #FFFFFF;\n","      --disabled-bg-color: #3B4455;\n","      --disabled-fill-color: #666;\n","  }\n","\n","  .colab-df-quickchart {\n","    background-color: var(--bg-color);\n","    border: none;\n","    border-radius: 50%;\n","    cursor: pointer;\n","    display: none;\n","    fill: var(--fill-color);\n","    height: 32px;\n","    padding: 0;\n","    width: 32px;\n","  }\n","\n","  .colab-df-quickchart:hover {\n","    background-color: var(--hover-bg-color);\n","    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n","    fill: var(--button-hover-fill-color);\n","  }\n","\n","  .colab-df-quickchart-complete:disabled,\n","  .colab-df-quickchart-complete:disabled:hover {\n","    background-color: var(--disabled-bg-color);\n","    fill: var(--disabled-fill-color);\n","    box-shadow: none;\n","  }\n","\n","  .colab-df-spinner {\n","    border: 2px solid var(--fill-color);\n","    border-color: transparent;\n","    border-bottom-color: var(--fill-color);\n","    animation:\n","      spin 1s steps(1) infinite;\n","  }\n","\n","  @keyframes spin {\n","    0% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","      border-left-color: var(--fill-color);\n","    }\n","    20% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    30% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","      border-right-color: var(--fill-color);\n","    }\n","    40% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    60% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","    }\n","    80% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-bottom-color: var(--fill-color);\n","    }\n","    90% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","    }\n","  }\n","</style>\n","\n","  <script>\n","    async function quickchart(key) {\n","      const quickchartButtonEl =\n","        document.querySelector('#' + key + ' button');\n","      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n","      quickchartButtonEl.classList.add('colab-df-spinner');\n","      try {\n","        const charts = await google.colab.kernel.invokeFunction(\n","            'suggestCharts', [key], {});\n","      } catch (error) {\n","        console.error('Error during call to suggestCharts:', error);\n","      }\n","      quickchartButtonEl.classList.remove('colab-df-spinner');\n","      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n","    }\n","    (() => {\n","      let quickchartButtonEl =\n","        document.querySelector('#df-c2e08eee-8133-4b59-8f67-12ff9956d6d1 button');\n","      quickchartButtonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","    })();\n","  </script>\n","</div>\n","\n","    </div>\n","  </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","summary":"{\n  \"name\": \"pd\",\n  \"rows\": 3,\n  \"fields\": [\n    {\n      \"column\": \"TFNS\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.018475208614068043,\n        \"min\": 0.84,\n        \"max\": 0.872,\n        \"num_unique_values\": 2,\n        \"samples\": [\n          0.84,\n          0.872\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FPB\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.011789826122551606,\n        \"min\": 0.773,\n        \"max\": 0.796,\n        \"num_unique_values\": 3,\n        \"samples\": [\n          0.796,\n          0.773\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FIQA\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.057657031950433715,\n        \"min\": 0.552,\n        \"max\": 0.66,\n        \"num_unique_values\": 3,\n        \"samples\": [\n          0.571,\n          0.552\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"NWGI\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.005196152422706636,\n        \"min\": 0.607,\n        \"max\": 0.616,\n        \"num_unique_values\": 2,\n        \"samples\": [\n          0.616,\n          0.607\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"}},"metadata":{},"execution_count":64}]},{"cell_type":"code","source":["score_dic"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"psHDLztU03mv","executionInfo":{"status":"ok","timestamp":1727748342464,"user_tz":240,"elapsed":153,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"22fb2803-f53c-4944-bbab-4e76f036aaae"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'TFNS': {'Accuracy': 0.872, 'F1_macro': 0.84, 'F1_weighted': 0.872},\n"," 'FPB': {'Accuracy': 0.796, 'F1_macro': 0.773, 'F1_weighted': 0.789},\n"," 'FIQA': {'Accuracy': 0.571, 'F1_macro': 0.552, 'F1_weighted': 0.66},\n"," 'NWGI': {'Accuracy': 0.607, 'F1_macro': 0.616, 'F1_weighted': 0.607}}"]},"metadata":{},"execution_count":66}]},{"cell_type":"markdown","source":["### 5.3 Result comparision"],"metadata":{"id":"43wgkR846D27"}},{"cell_type":"code","source":["#Results of other fine-tuned model come from previous tranning results.\n","results = {\n","    \"TFNS\": {\n","        \"FinGPT-ChatGlm2-6b\": {\"Acc\": 0.856, \"F1_macro\": 0.806, \"F1_weighted\": 0.850},\n","        \"FinGPT-V3.1\": {\"Acc\": 0.876, \"F1_macro\": 0.841, \"F1_weighted\":  0.875},\n","    },\n","    \"FPB\": {\n","        \"FinGPT-ChatGlm2-6b\": {\"Acc\": 0.741, \"F1_macro\": 0.655, \"F1_weighted\": 0.694},\n","        \"FinGPT-V3.1\": {\"Acc\": 0.856, \"F1_macro\": 0.841, \"F1_weighted\": 0.855},\n","    },\n","    \"FIQA\": {\n","        \"FinGPT-ChatGlm2-6b\": {\"Acc\": 0.48, \"F1_macro\": 0.5,  \"F1_weighted\": 0.49},\n","        \"FinGPT-V3.1\": {\"Acc\": 0.836, \"F1_macro\":0.746, \"F1_weighted\": 0.850},\n","    },\n","    \"NWGI\": {\n","        \"FinGPT-ChatGlm2-6b\": {\"Acc\": 0.521, \"F1_macro\": 0.500, \"F1_weighted\":0.490},\n","        \"FinGPT-V3.1\": {\"Acc\": 0.642, \"F1_macro\": 0.650,\"F1_weighted\": 0.642},\n","    },\n","}"],"metadata":{"id":"T3a8AIpV6qYM"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Update the results dictionary to insert the value of FinGPT-Llama-8b.\n","for dataset_name, scores in score_dic.items():\n","    if dataset_name in results:\n","\n","        if \"FinGPT-Llama-8b\" not in results[dataset_name]:\n","            results[dataset_name][\"FinGPT-Llama-8b\"] = {}\n","\n","        results[dataset_name][\"FinGPT-Llama-8b\"].update({\n","            \"Acc\": scores['Accuracy'],\n","            \"F1_macro\": scores['F1_macro'],\n","            \"F1_weighted\": scores['F1_weighted']\n","        })"],"metadata":{"id":"IYoY4szF2aRe"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["data = []\n","for dataset, models in results.items():\n","    for model, metrics in models.items():\n","        data.append([dataset, model, metrics.get(\"Acc\", None), metrics.get(\"F1_macro\", None),\n","                     metrics.get(\"F1_micro\", None), metrics.get(\"F1_weighted\", None)])\n","\n","df = pd.DataFrame(data, columns=[\"Dataset\", \"Model\", \"Acc\", \"F1_macro\", \"F1_micro\", \"F1_weighted\"])\n","\n","# visualization\n","def plot_metric(metric_name):\n","    plt.figure(figsize=(10, 6))\n","    for model in df[\"Model\"].unique():\n","        subset = df[df[\"Model\"] == model]\n","        plt.plot(subset[\"Dataset\"], subset[metric_name], marker='o', label=model)\n","    plt.title(f\"{metric_name} Comparison Across Datasets\")\n","    plt.xlabel(\"Dataset\")\n","    plt.ylabel(metric_name)\n","    plt.legend()\n","    plt.grid(True)\n","    plt.show()\n","\n","# Visualization of Accuracy, F1_macro and F1_weighted comparison\n","plot_metric(\"Acc\")\n","plot_metric(\"F1_macro\")\n","plot_metric(\"F1_weighted\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"id":"bJREtevw-kwq","executionInfo":{"status":"ok","timestamp":1727749010180,"user_tz":240,"elapsed":941,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"124f122b-1dc5-4251-cb6c-f0fea03affd7"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":["<Figure size 1000x600 with 1 Axes>"],"image/png":"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0bfbunUrq1evZtCgQTg6OuLp6cmJEydo1KgRNjY2jB49GmNjY7777jsCAgLYvn27fl7gpEmT+PLLL+nbty9+fn4kJSVx8OBBDh8+TIsWLQB46623OHHiBIMHD8bT05O4uDjCwsK4ePEinp6eeV7v43Tr1o3vv/+eTZs26c+1Zs0aUlJSeO+993BwcGD//v3MmTOHy5cvs2bNGgAGDBjA1atXCQsLY+nSpTmOO2vWLNq1a8fbb79Neno6K1eupEOHDvz555+0bt0agBMnTtCmTRuqVavGJ598gqmpKZGRkezevVt/HK1WS7t27di1axf9+/enYsWK/PPPP8yYMYOzZ8/qhwEuXbpU//z1798fQP8+fffdd1m7di2DBg2iUqVK3Lx5k127dnHq1Clq1ar13M+dEKKIUoQQQigHDx5UACUsLExRFEXRarWKm5ubMmTIkGztPvroIwVQfvnllxzH0Gq1iqIoysKFCxVAmT59+mPb5GbWrFkKoKxfv/6pYh46dKgCKDt37tTvu3PnjuLl5aV4enoqWVlZiqIoSnh4uAIoVapUUdLT0/Vtu3TpoqhUKiU4ODjbcevXr694eHhk2wcogHLw4EH9vpiYGMXMzEx544039PtSUlJyxLl3714FUH766Sf9vkWLFimA0rBhQyUzMzNb+wf3RUVFKYqiKOvXr1cA5cCBA499Ln799VcFUD777LNs+9u3b6+oVColMjIy27WYmJhk2/f3338rgDJnzpzHnuOB9PR0xcHBQRk/frx+X9euXZXq1atna7d161YFUD744IMcx3j4dQAoarVaOXHiRLY2r7/+umJiYqKcP39ev+/q1auKtbW14u/vr99XvXp1pXXr1o+N99atWwqgfP3113le26M+/vhjBVDi4+OfeOy8XgNffvmlolKplJiYGP2+999/X3ncx5BHj5Genq5UqVJFadq0qX7fjBkznhiboijK0qVLFbVane09oiiKMn/+fAVQdu/erd9naWmp9OjRI8cxbG1tlffff/+x5xBCiIfJsEAhhEDXE+Hi4kKTJk0A3TChTp06sXLlSrKysvTt1q1bR/Xq1XP0Cj14zIM2jo6ODB48+LFtcpOUlASAtbX1U8W8YcMG/Pz8aNiwoX6flZUV/fv3Jzo6mpMnT2Zr3717d4yNjfW369ati6IoOYbX1a1bl0uXLpGZmZltf/36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rURDJv48YEJDJkQqJpUrERERqVQsZhP/168F987azN5TqQxdsJUvRnfEqwwunfvzkIn8M1IaMiFSZalciYiISKXj5uRA9KA29J75E4fPpDPm4x3MHdiarUfPsz3JRI2j5+lQzx+LueQDH/48ZOJKkSrJkInGQd75wyY0ZEKkclO5EhERkUop0NuF6EFtuHfWZn48nETLV9b8XoQsfHB4G0HeLky4ozE9rw8qsF2hIRO/F6mSDJloXDPvbJSGTIhUTSpXIiIiUmldH+zNwI51eP/72EJnmBJTLjHqox38+7ZGVHNzyjsj9ftlfSUZMtG4pheNgzw1ZEJE8qlciYiISKWVa7Xx1a5TRb535STUq9/sL/Te/w6ZuHJGytdDQyZEpHgqVyIiIlJpbTl6noRihkv8WcNAT9qH19CQCRH5R1SuREREpNI6k3b1YgUw6pa69G4RXMZpRKSy0wXCIiIiUmn5e7qU6noiIn9F5UpEREQqrbZh1QnydqG44ecmIMjbhbZh1cszlohUUipXIiIiUmlZzCYm3NEYoFDBuvJ6wh2Nr+l5VyIixVG5EhERkUqt5/VBvDegFYHeBS/9C/R24b0BrQo950pE5O/SQAsRERGp9HpeH0T3xoFsjjnD6h9/oceN7ehQz19nrESkVKlciYiISJVgMZtoF1adc/tttAurrmIlIqVOlwWKiIiIiIiUApUrERERERGRUqByJSIiIiIiUgpUrkREREREREqBypWIiIiIiEgpULkSEREREREpBSpXIiIiIiIipUDlSkREREREpBSoXImIiIiIiJQClSsREREREZFSoHIlIiIiIiJSClSuRERERERESoHKlYiIiIiISClwMDqAPbLZbACkpqYanARycnLIzMwkNTUVR0dHo+OISDF0rIpUDDpWRSoGezpWr3SCKx3hr6hcFSEtLQ2AkJAQg5OIiIiIiIg9SEtLw9vb+y/XMdlKUsGqGKvVyqlTp/D09MRkMhmaJTU1lZCQEI4fP46Xl5ehWUSkeDpWRSoGHasiFYM9Has2m420tDRq1qyJ2fzXd1XpzFURzGYztWrVMjpGAV5eXob/jyUiV6djVaRi0LEqUjHYy7F6tTNWV2ighYiIiIiISClQuRIRERERESkFKld2ztnZmQkTJuDs7Gx0FBH5CzpWRSoGHasiFUNFPVY10EJERERERKQU6MyV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+RX79+/P/wsb5A2yOH/+PK6urjg4OODg4MCKFStYuHAhVqu1LD+OSKX1xhtv8PXXX7N58+YCyzt37szhw4f55JNPuOGGG/Lvmbzpppv4/vvv2bBhQ/7lgwBms5n77ruPjz76iFOnTpX75ygJlasK6LXXXmP9+vUFWvuuXbvo3bs3n3/+Ofv27SMmJobo6GjmzZtH7969DUwrUrWdOXOGxMREjh07xpIlS/jwww91TIqUoxo1atC9e3fefffdQj/YuHIp/ZWfpp87d47ly5ezaNGiApcD79y5kwsXLrB69WoDPoFIxde0aVP69+9f4NJ6yJs54OzszIwZM7j55pvzl7dt25YzZ86wfPnyQpcETpo0ieDgYNq2bcu8efPYvXs3R44c4csvv2Tz5s1FDrUpT7ossAKqX78+Q4cOLfAw0lq1ahEaGspLL72U/+DhK68ff/xxA9OKVG1Xbrp1cHAgJCSEhx56qNB9WSJStt555x06duyYf6n8n0ex169fnxdffBGADz/8kBo1anDfffcVmjjWq1cvoqOj6dmzpxEfQaTCe/nll1m8eHGBZS4uLrRv3z7/fqsrnJ2dad++PRs2bChUrmrUqMGWLVuYPHkyU6ZM4ejRo5jNZq677jr69u1b7g8N/l8mm9HD4EVERESu0eDBg0lOTmbZsmUlei8uLo6JEyeycuVKzpw5g81m4+677+bDDz/Ezc0NgGbNmnHjjTcyc+bMQvv87LPPePDBBzl58iS+vr5l9bFEpIJTuRIREZEqZ8KECUydOpU1a9bQvn17o+OISCWhciUiIiJV0vz580lJSWHs2LGYzboNXUT+OZUrERERERGRUqAf04iIiIiIiJQClSsREREREZFSoHIlIiIiIiJSClSuRERERERESoHKlYiIiIiISClQuRIRERERESkFKlciIlIhDR48GJPJhMlkwtHRkYCAALp37868efOwWq0l3s+CBQvw8fEpu6DFGDx4MH369Cn37ysiImVH5UpERCqsnj17kpCQQFxcHN9++y2dO3fm0Ucf5fbbb+fy5ctGxxMRkSpG5UpERCosZ2dnAgMDCQ4OplWrVjz33HMsX76cb7/9lgULFgAwdepUmjZtiru7OyEhIYwePZr09HQANmzYwJAhQ0hJSck/CzZx4kQAPvzwQ1q3bo2npyeBgYE88MADnDlzJv97X7hwgf79++Pn54erqyvXXXcd8+fPz3//+PHj3Hffffj4+FC9enV69+5NXFwcABMnTmThwoUsX748//tu2LChPH7JRESkDKlciYhIpdKlSxeaN2/O0qVLATCbzUyfPp29e/eycOFC1q9fz9NPPw1Ax44dmTZtGl5eXiQkJJCQkMCTTz4JQE5ODq+88gq//vory5YtIy4ujsGDB+d/nxdeeIF9+/bx7bffsn//ft577z18fX3zt42MjMTT05Mff/yRjRs34uHhQc+ePcnOzubJJ5/kvvvuyz/zlpCQQMeOHcv3F0pEREqdg9EBRERESlvDhg3ZvXs3AI899lj+8tDQUF599VVGjhzJu+++i5OTE97e3phMJgIDAwvsY+jQofn/Hh4ezvTp02nTpg3p6el4eHgQHx9Py5Ytad26df6+r1i8eDFWq5W5c+diMpkAmD9/Pj4+PmzYsIEePXrg6upKVlZWoe8rIiIVl85ciYhIpWOz2fJLzdq1a+natSvBwcF4enry4IMPcu7cOTIzM/9yH9u3b+eOO+6gdu3aeHp6cvPNNwMQHx8PwKhRo1i0aBEtWrTg6aefZtOmTfnb/vrrr8TExODp6YmHhwceHh5Ur16dS5cuceTIkTL61CIiYjSVKxERqXT2799PWFgYcXFx3H777TRr1owvvviC7du3M3PmTACys7OL3T4jI4PIyEi8vLz4+OOP2bp1K19++WWB7W699VaOHTvG448/zqlTp+jatWv+JYXp6elERESwa9euAl+HDh3igQceKONPLyIiRtFlgSIiUqmsX7+ePXv28Pjjj7N9+3asVitvv/02ZnPezxM/++yzAus7OTmRm5tbYNmBAwc4d+4cb7zxBiEhIQBs27at0Pfy8/Nj0KBBDBo0iBtvvJGnnnqKt956i1atWrF48WL8/f3x8vIqMmdR31dERCo2nbkSEZEKKysri8TERE6ePMmOHTuYNGkSvXv35vbbb2fgwIHUq1ePnJwcZsyYQWxsLB9++CGzZs0qsI/Q0FDS09NZt24dSUlJZGZmUrt2bZycnPK3++qrr3jllVcKbPfiiy+yfPlyYmJi2Lt3L//9739p1KgRAP3798fX15fevXvz448/cvToUTZs2MDYsWM5ceJE/vfdvXs3Bw8eJCkpiZycnPL5RRMRkTKjciUiIhXWypUrCQoKIjQ0lJ49e/Ldd98xffp0li9fjsVioXnz5kydOpXJkydz/fXX8/HHH/P6668X2EfHjh0ZOXIkffv2xc/PjzfffBM/Pz8WLFjAkiVLaNy4MW+88QZvvfVWge2cnJx49tlnadasGTfddBMWi4VFixYB4Obmxg8//EDt2rW5++67adSoEVFRUVy6dCn/TNbw4cNp0KABrVu3xs/Pj40bN5bPL5qIiJQZk81msxkdQkREREREpKLTmSsREREREZFSoHIlIiIiIiJSClSuRERERERESoHKlYiIiIiISClQuRIRERERESkFKlciIiIiIiKlQOVKRERERESkFKhciYiIiIiIlAKVKxERERERkVKgciUiIiIiIlIKVK5ERERERERKwf8DDGtub4Nf0IoAAAAASUVORK5CYII=\n"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["<Figure size 1000x600 with 1 Axes>"],"image/png":"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ub7tnjlzJg8//DDu7u50796db7755l7HFikSHn/8cerUqcPo0aOvmdesWTPs7OysRWr16tW0bNmS4OBgzp49y7FjxwBYs2YNrVq1AuDMmTNcuHCBypUr59pWcHCw9X362Wefvbsv6l+oXBUQ8+fPZ/v27dZHtWrVrlkmJCSE5s2b57qg7//r168fcXFxzJs3jyZNmvDTTz9RvXp1li9ffrfjixRZrVq1yrVvTpo0yTrvavFycHDgoYceokuXLrkGmQFYu3atdd2vv/6acePG8cUXX9zjVyFSNN3Klx+HDh0iOzubqlWrXncbVatW5fz585w5cwaArKwsvv32W+vAUs888wzr1q2zftATkdvzwQcfMGvWLPbt25drupOTEw0aNLCWqzVr1vDAAw9gY2ND06ZNWb16NUePHiUmJsZarm7k119/Zfv27YSEhHDx4sW79VJuia65KiACAgKoUKHCvy43fvx4mjRpwmuvvXbd+a6urjz66KM8+uijjB07lpCQEMaOHUvbtm3zO7JIseDs7HzDfbNVq1Z88cUX2NnZUaZMGWxsrv2VWq5cOes1V9WrV2fTpk2899579O3b927GFikWru6DVzk7O99w2X+7DsPOzg6A5cuXk5qaSocOHQDw8PCgbdu2zJgxg3fffTcfUosUL/fffz8hISGMHDnSeh3VVa1atWL+/Pns2bOHixcvUq9ePQBatmzJqlWryMrKwsnJyXo6vaenJyVKlODAgQO5tlO2bFkg53Ow0QO56chVIdOwYUOeeOIJXn/99X9d1mQyUaVKFVJTU+9BMpHi52rxKlu27HWL1fVYLBbDv1UTKSqu7oNXH76+vtcsU6FCBUwm0zXfml+1b98+6wc2yBnIIiEhAUdHR2xsbLCxsWHJkiXMmjWLrKysu/lyRIqs8ePHs3jxYjZs2JBreqtWrTh06BDfffcdzZs3t14zef/997NmzRpWr15tPX0QwGw207lzZ+bOncupU6fu+eu4FSpXhdB7773HypUrc7X27du306lTJ37++Wf27t3L4cOH+eabb5gxYwadOnUyMK1I8Xb69Gni4uKIjo7mp59+Ys6cOdonRe6h0qVL07ZtW6ZOnXrNFxtXT6W/+m36uXPnWLhwIT/88EOu04G3bdvG+fPnWbZsmQGvQKTwq1mzJt26dct1aj3kjDlgb2/P559/TsuWLa3TGzZsyOnTp1m4cOE1pwSOGzcOPz8/GjZsyIwZM9i5cydHjhzh119/ZcOGDdcd1OZe0mmBhVClSpV44YUXct2M1N/fn6CgIN5++23rjYev/jxkyBAD04oUb1cvurWxsSEgIIA+ffpcc12WiNxdkydPpmnTptZT5f//UOyVKlVi1KhRAMyZM4fSpUvTuXPna0Yc69ChA9988w3t27c34iWIFHrvvPMO8+fPzzXNwcGBxo0bW6+3usre3p7GjRuzevXqa8pV6dKl2bx5Mx988AEfffQRx44dw2w2U7FiRbp06XLPbxr8v0zZRg8GLyIiInKbevbsyYULF/jtt99uaV5UVBRjxoxh6dKlnD59muzsbJ544gnmzJmDk5MTALVq1aJFixZMmTLlmm3++OOPPPfcc5w8eRIPD4+79bJEpJBTuRIREZFiZ/To0UyYMIHly5fTuHFjo+OISBGhciUiIiLF0syZM0lMTGTgwIGYzboMXUTunMqViIiIiIhIPtDXNCIiIiIiIvlA5UpERERERCQfqFyJiIiIiIjkA5UrERERERGRfKByJSIiIiIikg9UrkRERERERPKBypWIiBRKPXv2xGQyYTKZsLW1xdvbm7Zt2zJjxgyysrJueTvffvstJUqUuHtBb6Bnz5489thj9/x5RUTk7lG5EhGRQqt9+/bExsYSFRXFn3/+SatWrRg0aBCPPPIIV65cMTqeiIgUMypXIiJSaNnb2+Pj44Ofnx/16tXjjTfeYOHChfz55598++23AEyYMIGaNWvi7OxMQEAAoaGhpKSkALB69Wp69epFYmKi9SjYmDFjAJgzZw7169fH1dUVHx8funbtyunTp63Pff78ebp164anpyeOjo5UrFiRmTNnWucfP36czp07U6JECUqVKkWnTp2IiooCYMyYMcyaNYuFCxdan3f16tX34o9MRETuIpUrEREpUh588EFq167NggULADCbzUyaNIk9e/Ywa9YsVq5cyfDhwwFo2rQpEydOxM3NjdjYWGJjYxk2bBgAGRkZvPvuu+zYsYPffvuNqKgoevbsaX2et956i7179/Lnn3+yb98+vvjiCzw8PKzrhoSE4Orqytq1a4mIiMDFxYX27duTnp7OsGHD6Ny5s/XIW2xsLE2bNr23f1AiIpLvbIwOICIikt+qVKnCzp07ARg8eLB1elBQEGPHjuWVV15h6tSp2NnZ4e7ujslkwsfHJ9c2XnjhBev/ly9fnkmTJtGgQQNSUlJwcXEhJiaGunXrUr9+feu2r5o/fz5ZWVl8/fXXmEwmAGbOnEmJEiVYvXo17dq1w9HRkcuXL1/zvCIiUnjpyJWIiBQ52dnZ1lKzYsUKWrdujZ+fH66urjz33HOcO3eOtLS0m24jMjKSRx99lLJly+Lq6krLli0BiImJAaBv37788MMP1KlTh+HDh7N+/Xrrujt27ODw4cO4urri4uKCi4sLpUqV4tKlSxw5cuQuvWoRETGaypWIiBQ5+/bto1y5ckRFRfHII49Qq1YtfvnlFyIjI5kyZQoA6enpN1w/NTWVkJAQ3NzcmDdvHn///Te//vprrvUeeughoqOjGTJkCKdOnaJ169bWUwpTUlIIDg5m+/btuR4HDx6ka9eud/nVi4iIUXRaoIiIFCkrV65k165dDBkyhMjISLKysvjkk08wm3O+T/zxxx9zLW9nZ0dmZmauafv37+fcuXOMHz+egIAAALZs2XLNc3l6evL888/z/PPP06JFC1577TU+/vhj6tWrx/z58/Hy8sLNze26Oa/3vCIiUrjpyJWIiBRaly9fJi4ujpMnT7J161bGjRtHp06deOSRR+jRowcVKlQgIyODzz//nKNHjzJnzhymTZuWaxtBQUGkpKQQHh7O2bNnSUtLo2zZstjZ2VnXW7RoEe+++26u9UaNGsXChQs5fPgwe/bs4ffff6dq1aoAdOvWDQ8PDzp16sTatWs5duwYq1evZuDAgZw4ccL6vDt37uTAgQOcPXuWjIyMe/OHJiIid43KlYiIFFpLly7F19eXoKAg2rdvz6pVq5g0aRILFy7EYrFQu3ZtJkyYwAcffECNGjWYN28e77//fq5tNG3alFdeeYUuXbrg6enJhx9+iKenJ99++y0//fQT1apVY/z48Xz88ce51rOzs2PkyJHUqlWL+++/H4vFwg8//ACAk5MTf/31F2XLluWJJ56gatWqvPjii1y6dMl6JKt3795UrlyZ+vXr4+npSURExL35QxMRkbvGlJ2dnW10CBERERERkcJOR65ERERERETygcqViIiIiIhIPlC5EhERERERyQcqVyIiIiIiIvlA5UpERERERCQfqFyJiIiIiIjkA5UrERERERGRfKByJSIiIiIikg9UrkRERERERPKBypWIiIiIiEg+ULkSERERERHJB/8HPqrxZJWXFM0AAAAASUVORK5CYII=\n"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["<Figure size 1000x600 with 1 Axes>"],"image/png":"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AgMD6dq1K3FxcY7vfeHCBbp164afnx9FihShUqVKTJ061fH6iRMn6NixI0WLFqV48eK0adOGo0ePAjBy5EimT5/OkiVLHN937dq19+KvTEREcpHKlYiIFCiPPPIItWvXZuHChQBYLBbGjh3Lrl27mD59Oj///DOvv/46AI0aNeKLL77A29ubM2fOcObMGV599VUA0tPTef/999m2bRuLFy/m6NGj9O7d2/F93nnnHXbv3s0PP/zAnj17+Prrr/H19XW8t0WLFnh5efHbb7/xxx9/4OnpScuWLUlLS+PVV1+lY8eOjpG3M2fO0KhRo3v7FyUiIjnOyewAIiIiOa1q1aps374dgJdfftnxfLly5fjggw8YNGgQX331FS4uLvj4+GAYBoGBgVn20bdvX8efK1SowNixY6lfvz5JSUl4enpy/Phx6tatS2hoqGPf18ybNw+bzcakSZMwDAOAqVOnUrRoUdauXctjjz1GkSJFSE1Nve77iohI/qWRKxERKXDsdruj1KxevZpHH32U4OBgvLy86NGjB+fPnyclJeWW+4iKiqJ169aUKVMGLy8vmjRpAsDx48cBGDx4MHPnzqVOnTq8/vrrrF+/3vHebdu2cfDgQby8vPD09MTT05PixYtz5coVDh06lEtHLSIiZlO5EhGRAmfPnj2UL1+eo0eP8uSTT1KrVi2+++47oqKi+PLLLwFIS0u76fuTk5Np0aIF3t7ezJ49m02bNrFo0aIs73v88cc5duwYr7zyCqdPn+bRRx91TClMSkoiJCSErVu3Zvnav38/Xbt2zeWjFxERs2haoIiIFCg///wzO3bs4JVXXiEqKgqbzcbnn3+OxZL5eeL8+fOzbO/i4kJGRkaW5/bu3cv58+cZPXo0pUuXBmDz5s3XfS8/Pz969epFr169ePDBB3nttdf47LPPqFevHvPmzcPf3x9vb+8b5rzR9xURkfxNI1ciIpJvpaamEhMTw6lTp4iOjmbUqFG0adOGJ598kp49e1KxYkXS09P597//zeHDh5k5cybjxo3Lso9y5cqRlJTEmjVrOHfuHCkpKZQpUwYXFxfH+5YuXcr777+f5X3Dhw9nyZIlHDx4kF27drF8+XKqVasGQLdu3fD19aVNmzb89ttvHDlyhLVr1/Liiy9y8uRJx/fdvn07+/bt49y5c6Snp9+bvzQREck1KlciIpJvrVy5kqCgIMqVK0fLli355ZdfGDt2LEuWLMFqtVK7dm3GjBnDxx9/zP3338/s2bP56KOPsuyjUaNGDBo0iE6dOuHn58cnn3yCn58f06ZNY8GCBVSvXp3Ro0fz2WefZXmfi4sLw4YNo1atWjz00ENYrVbmzp0LgLu7O7/++itlypShffv2VKtWjX79+nHlyhXHSFb//v2pUqUKoaGh+Pn58ccff9ybvzQREck1ht1ut5sdQkREREREJL/TyJWIiIiIiEgOULkSERERERHJASpXIiIiIiIiOUDlSkREREREJAeoXImIiIiIiOQAlSsREREREZEcoHIlIiIiIiKSA1SuREREREREcoDKlYiIiIiISA5QuRIREREREckBKlciIiIiIiI54P8BJr6uZST42XkAAAAASUVORK5CYII=\n"},"metadata":{}}]},{"cell_type":"code","source":["# Transpose the data table so that the rows are datasets and the columns are models for Acc, F1_macro, and F1_weighted, respectively.\n","\n","\n","acc_df = df.pivot(index='Dataset', columns='Model', values='Acc')\n","\n","\n","f1_macro_df = df.pivot(index='Dataset', columns='Model', values='F1_macro')\n","\n","\n","f1_weighted_df = df.pivot(index='Dataset', columns='Model', values='F1_weighted')"],"metadata":{"id":"cHZ5dr-J-nLu"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["print(\"Accuracy DataFrame:\")\n","acc_df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":224},"id":"UKU7Rg5SAcuq","executionInfo":{"status":"ok","timestamp":1727749084863,"user_tz":240,"elapsed":4,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"4613fb9a-7463-4e5e-85ff-9bca36adfb66"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Accuracy DataFrame:\n"]},{"output_type":"execute_result","data":{"text/plain":["Model    FinGPT-ChatGlm2-6b  FinGPT-Llama-8b  FinGPT-V3.1\n","Dataset                                                  \n","FIQA                  0.480            0.571        0.836\n","FPB                   0.741            0.796        0.856\n","NWGI                  0.521            0.607        0.642\n","TFNS                  0.856            0.872        0.876"],"text/html":["\n","  <div id=\"df-4706ab9a-3bd8-403a-a4a4-2aacfd864ffa\" class=\"colab-df-container\">\n","    <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th>Model</th>\n","      <th>FinGPT-ChatGlm2-6b</th>\n","      <th>FinGPT-Llama-8b</th>\n","      <th>FinGPT-V3.1</th>\n","    </tr>\n","    <tr>\n","      <th>Dataset</th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>FIQA</th>\n","      <td>0.480</td>\n","      <td>0.571</td>\n","      <td>0.836</td>\n","    </tr>\n","    <tr>\n","      <th>FPB</th>\n","      <td>0.741</td>\n","      <td>0.796</td>\n","      <td>0.856</td>\n","    </tr>\n","    <tr>\n","      <th>NWGI</th>\n","      <td>0.521</td>\n","      <td>0.607</td>\n","      <td>0.642</td>\n","    </tr>\n","    <tr>\n","      <th>TFNS</th>\n","      <td>0.856</td>\n","      <td>0.872</td>\n","      <td>0.876</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","    <div class=\"colab-df-buttons\">\n","\n","  <div class=\"colab-df-container\">\n","    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-4706ab9a-3bd8-403a-a4a4-2aacfd864ffa')\"\n","            title=\"Convert this dataframe to an interactive table.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n","    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n","  </svg>\n","    </button>\n","\n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    .colab-df-buttons div {\n","      margin-bottom: 4px;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","    <script>\n","      const buttonEl =\n","        document.querySelector('#df-4706ab9a-3bd8-403a-a4a4-2aacfd864ffa button.colab-df-convert');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      async function convertToInteractive(key) {\n","        const element = document.querySelector('#df-4706ab9a-3bd8-403a-a4a4-2aacfd864ffa');\n","        const dataTable =\n","          await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                    [key], {});\n","        if (!dataTable) return;\n","\n","        const docLinkHtml = 'Like what you see? Visit the ' +\n","          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","          + ' to learn more about interactive tables.';\n","        element.innerHTML = '';\n","        dataTable['output_type'] = 'display_data';\n","        await google.colab.output.renderOutput(dataTable, element);\n","        const docLink = document.createElement('div');\n","        docLink.innerHTML = docLinkHtml;\n","        element.appendChild(docLink);\n","      }\n","    </script>\n","  </div>\n","\n","\n","<div id=\"df-6420c7d9-b66d-4dd0-8054-5dfe56deca5c\">\n","  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-6420c7d9-b66d-4dd0-8054-5dfe56deca5c')\"\n","            title=\"Suggest charts\"\n","            style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","     width=\"24px\">\n","    <g>\n","        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n","    </g>\n","</svg>\n","  </button>\n","\n","<style>\n","  .colab-df-quickchart {\n","      --bg-color: #E8F0FE;\n","      --fill-color: #1967D2;\n","      --hover-bg-color: #E2EBFA;\n","      --hover-fill-color: #174EA6;\n","      --disabled-fill-color: #AAA;\n","      --disabled-bg-color: #DDD;\n","  }\n","\n","  [theme=dark] .colab-df-quickchart {\n","      --bg-color: #3B4455;\n","      --fill-color: #D2E3FC;\n","      --hover-bg-color: #434B5C;\n","      --hover-fill-color: #FFFFFF;\n","      --disabled-bg-color: #3B4455;\n","      --disabled-fill-color: #666;\n","  }\n","\n","  .colab-df-quickchart {\n","    background-color: var(--bg-color);\n","    border: none;\n","    border-radius: 50%;\n","    cursor: pointer;\n","    display: none;\n","    fill: var(--fill-color);\n","    height: 32px;\n","    padding: 0;\n","    width: 32px;\n","  }\n","\n","  .colab-df-quickchart:hover {\n","    background-color: var(--hover-bg-color);\n","    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n","    fill: var(--button-hover-fill-color);\n","  }\n","\n","  .colab-df-quickchart-complete:disabled,\n","  .colab-df-quickchart-complete:disabled:hover {\n","    background-color: var(--disabled-bg-color);\n","    fill: var(--disabled-fill-color);\n","    box-shadow: none;\n","  }\n","\n","  .colab-df-spinner {\n","    border: 2px solid var(--fill-color);\n","    border-color: transparent;\n","    border-bottom-color: var(--fill-color);\n","    animation:\n","      spin 1s steps(1) infinite;\n","  }\n","\n","  @keyframes spin {\n","    0% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","      border-left-color: var(--fill-color);\n","    }\n","    20% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    30% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","      border-right-color: var(--fill-color);\n","    }\n","    40% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    60% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","    }\n","    80% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-bottom-color: var(--fill-color);\n","    }\n","    90% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","    }\n","  }\n","</style>\n","\n","  <script>\n","    async function quickchart(key) {\n","      const quickchartButtonEl =\n","        document.querySelector('#' + key + ' button');\n","      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n","      quickchartButtonEl.classList.add('colab-df-spinner');\n","      try {\n","        const charts = await google.colab.kernel.invokeFunction(\n","            'suggestCharts', [key], {});\n","      } catch (error) {\n","        console.error('Error during call to suggestCharts:', error);\n","      }\n","      quickchartButtonEl.classList.remove('colab-df-spinner');\n","      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n","    }\n","    (() => {\n","      let quickchartButtonEl =\n","        document.querySelector('#df-6420c7d9-b66d-4dd0-8054-5dfe56deca5c button');\n","      quickchartButtonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","    })();\n","  </script>\n","</div>\n","\n","  <div id=\"id_db2aefa8-ff1a-4b2d-98a8-9ba6c7369a19\">\n","    <style>\n","      .colab-df-generate {\n","        background-color: #E8F0FE;\n","        border: none;\n","        border-radius: 50%;\n","        cursor: pointer;\n","        display: none;\n","        fill: #1967D2;\n","        height: 32px;\n","        padding: 0 0 0 0;\n","        width: 32px;\n","      }\n","\n","      .colab-df-generate:hover {\n","        background-color: #E2EBFA;\n","        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","        fill: #174EA6;\n","      }\n","\n","      [theme=dark] .colab-df-generate {\n","        background-color: #3B4455;\n","        fill: #D2E3FC;\n","      }\n","\n","      [theme=dark] .colab-df-generate:hover {\n","        background-color: #434B5C;\n","        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","        fill: #FFFFFF;\n","      }\n","    </style>\n","    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('acc_df')\"\n","            title=\"Generate code using this dataframe.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n","  </svg>\n","    </button>\n","    <script>\n","      (() => {\n","      const buttonEl =\n","        document.querySelector('#id_db2aefa8-ff1a-4b2d-98a8-9ba6c7369a19 button.colab-df-generate');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      buttonEl.onclick = () => {\n","        google.colab.notebook.generateWithVariable('acc_df');\n","      }\n","      })();\n","    </script>\n","  </div>\n","\n","    </div>\n","  </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"acc_df","summary":"{\n  \"name\": \"acc_df\",\n  \"rows\": 4,\n  \"fields\": [\n    {\n      \"column\": \"Dataset\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 4,\n        \"samples\": [\n          \"FPB\",\n          \"TFNS\",\n          \"FIQA\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-ChatGlm2-6b\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.17912472377275745,\n        \"min\": 0.48,\n        \"max\": 0.856,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.741,\n          0.856,\n          0.48\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-Llama-8b\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.145557548756497,\n        \"min\": 0.571,\n        \"max\": 0.872,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.796,\n          0.872,\n          0.571\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-V3.1\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.10823893322953004,\n        \"min\": 0.642,\n        \"max\": 0.876,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.856,\n          0.876,\n          0.836\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"}},"metadata":{},"execution_count":82}]},{"cell_type":"code","source":["print(\"\\nF1 Macro DataFrame:\")\n","f1_macro_df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":242},"id":"c90wi9CmAhkf","executionInfo":{"status":"ok","timestamp":1727749088909,"user_tz":240,"elapsed":840,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"cbed6afc-403e-4388-b785-3531065dd1cf"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","F1 Macro DataFrame:\n"]},{"output_type":"execute_result","data":{"text/plain":["Model    FinGPT-ChatGlm2-6b  FinGPT-Llama-8b  FinGPT-V3.1\n","Dataset                                                  \n","FIQA                  0.500            0.552        0.746\n","FPB                   0.655            0.773        0.841\n","NWGI                  0.500            0.616        0.650\n","TFNS                  0.806            0.840        0.841"],"text/html":["\n","  <div id=\"df-d61027e6-745f-4671-87ca-c98955fea412\" class=\"colab-df-container\">\n","    <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th>Model</th>\n","      <th>FinGPT-ChatGlm2-6b</th>\n","      <th>FinGPT-Llama-8b</th>\n","      <th>FinGPT-V3.1</th>\n","    </tr>\n","    <tr>\n","      <th>Dataset</th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>FIQA</th>\n","      <td>0.500</td>\n","      <td>0.552</td>\n","      <td>0.746</td>\n","    </tr>\n","    <tr>\n","      <th>FPB</th>\n","      <td>0.655</td>\n","      <td>0.773</td>\n","      <td>0.841</td>\n","    </tr>\n","    <tr>\n","      <th>NWGI</th>\n","      <td>0.500</td>\n","      <td>0.616</td>\n","      <td>0.650</td>\n","    </tr>\n","    <tr>\n","      <th>TFNS</th>\n","      <td>0.806</td>\n","      <td>0.840</td>\n","      <td>0.841</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","    <div class=\"colab-df-buttons\">\n","\n","  <div class=\"colab-df-container\">\n","    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-d61027e6-745f-4671-87ca-c98955fea412')\"\n","            title=\"Convert this dataframe to an interactive table.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n","    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n","  </svg>\n","    </button>\n","\n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    .colab-df-buttons div {\n","      margin-bottom: 4px;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","    <script>\n","      const buttonEl =\n","        document.querySelector('#df-d61027e6-745f-4671-87ca-c98955fea412 button.colab-df-convert');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      async function convertToInteractive(key) {\n","        const element = document.querySelector('#df-d61027e6-745f-4671-87ca-c98955fea412');\n","        const dataTable =\n","          await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                    [key], {});\n","        if (!dataTable) return;\n","\n","        const docLinkHtml = 'Like what you see? Visit the ' +\n","          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","          + ' to learn more about interactive tables.';\n","        element.innerHTML = '';\n","        dataTable['output_type'] = 'display_data';\n","        await google.colab.output.renderOutput(dataTable, element);\n","        const docLink = document.createElement('div');\n","        docLink.innerHTML = docLinkHtml;\n","        element.appendChild(docLink);\n","      }\n","    </script>\n","  </div>\n","\n","\n","<div id=\"df-41c7bda0-3512-4aa3-bbb9-1a852c5616ea\">\n","  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-41c7bda0-3512-4aa3-bbb9-1a852c5616ea')\"\n","            title=\"Suggest charts\"\n","            style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","     width=\"24px\">\n","    <g>\n","        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n","    </g>\n","</svg>\n","  </button>\n","\n","<style>\n","  .colab-df-quickchart {\n","      --bg-color: #E8F0FE;\n","      --fill-color: #1967D2;\n","      --hover-bg-color: #E2EBFA;\n","      --hover-fill-color: #174EA6;\n","      --disabled-fill-color: #AAA;\n","      --disabled-bg-color: #DDD;\n","  }\n","\n","  [theme=dark] .colab-df-quickchart {\n","      --bg-color: #3B4455;\n","      --fill-color: #D2E3FC;\n","      --hover-bg-color: #434B5C;\n","      --hover-fill-color: #FFFFFF;\n","      --disabled-bg-color: #3B4455;\n","      --disabled-fill-color: #666;\n","  }\n","\n","  .colab-df-quickchart {\n","    background-color: var(--bg-color);\n","    border: none;\n","    border-radius: 50%;\n","    cursor: pointer;\n","    display: none;\n","    fill: var(--fill-color);\n","    height: 32px;\n","    padding: 0;\n","    width: 32px;\n","  }\n","\n","  .colab-df-quickchart:hover {\n","    background-color: var(--hover-bg-color);\n","    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n","    fill: var(--button-hover-fill-color);\n","  }\n","\n","  .colab-df-quickchart-complete:disabled,\n","  .colab-df-quickchart-complete:disabled:hover {\n","    background-color: var(--disabled-bg-color);\n","    fill: var(--disabled-fill-color);\n","    box-shadow: none;\n","  }\n","\n","  .colab-df-spinner {\n","    border: 2px solid var(--fill-color);\n","    border-color: transparent;\n","    border-bottom-color: var(--fill-color);\n","    animation:\n","      spin 1s steps(1) infinite;\n","  }\n","\n","  @keyframes spin {\n","    0% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","      border-left-color: var(--fill-color);\n","    }\n","    20% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    30% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","      border-right-color: var(--fill-color);\n","    }\n","    40% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    60% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","    }\n","    80% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-bottom-color: var(--fill-color);\n","    }\n","    90% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","    }\n","  }\n","</style>\n","\n","  <script>\n","    async function quickchart(key) {\n","      const quickchartButtonEl =\n","        document.querySelector('#' + key + ' button');\n","      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n","      quickchartButtonEl.classList.add('colab-df-spinner');\n","      try {\n","        const charts = await google.colab.kernel.invokeFunction(\n","            'suggestCharts', [key], {});\n","      } catch (error) {\n","        console.error('Error during call to suggestCharts:', error);\n","      }\n","      quickchartButtonEl.classList.remove('colab-df-spinner');\n","      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n","    }\n","    (() => {\n","      let quickchartButtonEl =\n","        document.querySelector('#df-41c7bda0-3512-4aa3-bbb9-1a852c5616ea button');\n","      quickchartButtonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","    })();\n","  </script>\n","</div>\n","\n","  <div id=\"id_1318d627-3066-4034-b8dc-b366fc113bfd\">\n","    <style>\n","      .colab-df-generate {\n","        background-color: #E8F0FE;\n","        border: none;\n","        border-radius: 50%;\n","        cursor: pointer;\n","        display: none;\n","        fill: #1967D2;\n","        height: 32px;\n","        padding: 0 0 0 0;\n","        width: 32px;\n","      }\n","\n","      .colab-df-generate:hover {\n","        background-color: #E2EBFA;\n","        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","        fill: #174EA6;\n","      }\n","\n","      [theme=dark] .colab-df-generate {\n","        background-color: #3B4455;\n","        fill: #D2E3FC;\n","      }\n","\n","      [theme=dark] .colab-df-generate:hover {\n","        background-color: #434B5C;\n","        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","        fill: #FFFFFF;\n","      }\n","    </style>\n","    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('f1_macro_df')\"\n","            title=\"Generate code using this dataframe.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n","  </svg>\n","    </button>\n","    <script>\n","      (() => {\n","      const buttonEl =\n","        document.querySelector('#id_1318d627-3066-4034-b8dc-b366fc113bfd button.colab-df-generate');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      buttonEl.onclick = () => {\n","        google.colab.notebook.generateWithVariable('f1_macro_df');\n","      }\n","      })();\n","    </script>\n","  </div>\n","\n","    </div>\n","  </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"f1_macro_df","summary":"{\n  \"name\": \"f1_macro_df\",\n  \"rows\": 4,\n  \"fields\": [\n    {\n      \"column\": \"Dataset\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 4,\n        \"samples\": [\n          \"FPB\",\n          \"TFNS\",\n          \"FIQA\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-ChatGlm2-6b\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.1466637310312267,\n        \"min\": 0.5,\n        \"max\": 0.806,\n        \"num_unique_values\": 3,\n        \"samples\": [\n          0.5,\n          0.655,\n          0.806\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-Llama-8b\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.13391384045970253,\n        \"min\": 0.552,\n        \"max\": 0.84,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.773,\n          0.84,\n          0.552\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-V3.1\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.09139110095262737,\n        \"min\": 0.65,\n        \"max\": 0.841,\n        \"num_unique_values\": 3,\n        \"samples\": [\n          0.746,\n          0.841,\n          0.65\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"}},"metadata":{},"execution_count":83}]},{"cell_type":"code","source":["print(\"\\nF1 Weighted DataFrame:\")\n","f1_weighted_df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":242},"id":"UL4cKTJ4Aj1W","executionInfo":{"status":"ok","timestamp":1727749092946,"user_tz":240,"elapsed":1016,"user":{"displayName":"Yuncong Liu","userId":"08340999060190968949"}},"outputId":"7d74a76a-2029-4255-ba59-128f2fef6b44"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","F1 Weighted DataFrame:\n"]},{"output_type":"execute_result","data":{"text/plain":["Model    FinGPT-ChatGlm2-6b  FinGPT-Llama-8b  FinGPT-V3.1\n","Dataset                                                  \n","FIQA                  0.490            0.660        0.850\n","FPB                   0.694            0.789        0.855\n","NWGI                  0.490            0.607        0.642\n","TFNS                  0.850            0.872        0.875"],"text/html":["\n","  <div id=\"df-2199abc2-90ea-4819-902a-17943d35b98d\" class=\"colab-df-container\">\n","    <div>\n","<style scoped>\n","    .dataframe tbody tr th:only-of-type {\n","        vertical-align: middle;\n","    }\n","\n","    .dataframe tbody tr th {\n","        vertical-align: top;\n","    }\n","\n","    .dataframe thead th {\n","        text-align: right;\n","    }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n","  <thead>\n","    <tr style=\"text-align: right;\">\n","      <th>Model</th>\n","      <th>FinGPT-ChatGlm2-6b</th>\n","      <th>FinGPT-Llama-8b</th>\n","      <th>FinGPT-V3.1</th>\n","    </tr>\n","    <tr>\n","      <th>Dataset</th>\n","      <th></th>\n","      <th></th>\n","      <th></th>\n","    </tr>\n","  </thead>\n","  <tbody>\n","    <tr>\n","      <th>FIQA</th>\n","      <td>0.490</td>\n","      <td>0.660</td>\n","      <td>0.850</td>\n","    </tr>\n","    <tr>\n","      <th>FPB</th>\n","      <td>0.694</td>\n","      <td>0.789</td>\n","      <td>0.855</td>\n","    </tr>\n","    <tr>\n","      <th>NWGI</th>\n","      <td>0.490</td>\n","      <td>0.607</td>\n","      <td>0.642</td>\n","    </tr>\n","    <tr>\n","      <th>TFNS</th>\n","      <td>0.850</td>\n","      <td>0.872</td>\n","      <td>0.875</td>\n","    </tr>\n","  </tbody>\n","</table>\n","</div>\n","    <div class=\"colab-df-buttons\">\n","\n","  <div class=\"colab-df-container\">\n","    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-2199abc2-90ea-4819-902a-17943d35b98d')\"\n","            title=\"Convert this dataframe to an interactive table.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n","    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n","  </svg>\n","    </button>\n","\n","  <style>\n","    .colab-df-container {\n","      display:flex;\n","      gap: 12px;\n","    }\n","\n","    .colab-df-convert {\n","      background-color: #E8F0FE;\n","      border: none;\n","      border-radius: 50%;\n","      cursor: pointer;\n","      display: none;\n","      fill: #1967D2;\n","      height: 32px;\n","      padding: 0 0 0 0;\n","      width: 32px;\n","    }\n","\n","    .colab-df-convert:hover {\n","      background-color: #E2EBFA;\n","      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","      fill: #174EA6;\n","    }\n","\n","    .colab-df-buttons div {\n","      margin-bottom: 4px;\n","    }\n","\n","    [theme=dark] .colab-df-convert {\n","      background-color: #3B4455;\n","      fill: #D2E3FC;\n","    }\n","\n","    [theme=dark] .colab-df-convert:hover {\n","      background-color: #434B5C;\n","      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","      fill: #FFFFFF;\n","    }\n","  </style>\n","\n","    <script>\n","      const buttonEl =\n","        document.querySelector('#df-2199abc2-90ea-4819-902a-17943d35b98d button.colab-df-convert');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      async function convertToInteractive(key) {\n","        const element = document.querySelector('#df-2199abc2-90ea-4819-902a-17943d35b98d');\n","        const dataTable =\n","          await google.colab.kernel.invokeFunction('convertToInteractive',\n","                                                    [key], {});\n","        if (!dataTable) return;\n","\n","        const docLinkHtml = 'Like what you see? Visit the ' +\n","          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n","          + ' to learn more about interactive tables.';\n","        element.innerHTML = '';\n","        dataTable['output_type'] = 'display_data';\n","        await google.colab.output.renderOutput(dataTable, element);\n","        const docLink = document.createElement('div');\n","        docLink.innerHTML = docLinkHtml;\n","        element.appendChild(docLink);\n","      }\n","    </script>\n","  </div>\n","\n","\n","<div id=\"df-b279fac4-0e6c-43b1-a950-f7752499ceed\">\n","  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-b279fac4-0e6c-43b1-a950-f7752499ceed')\"\n","            title=\"Suggest charts\"\n","            style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","     width=\"24px\">\n","    <g>\n","        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n","    </g>\n","</svg>\n","  </button>\n","\n","<style>\n","  .colab-df-quickchart {\n","      --bg-color: #E8F0FE;\n","      --fill-color: #1967D2;\n","      --hover-bg-color: #E2EBFA;\n","      --hover-fill-color: #174EA6;\n","      --disabled-fill-color: #AAA;\n","      --disabled-bg-color: #DDD;\n","  }\n","\n","  [theme=dark] .colab-df-quickchart {\n","      --bg-color: #3B4455;\n","      --fill-color: #D2E3FC;\n","      --hover-bg-color: #434B5C;\n","      --hover-fill-color: #FFFFFF;\n","      --disabled-bg-color: #3B4455;\n","      --disabled-fill-color: #666;\n","  }\n","\n","  .colab-df-quickchart {\n","    background-color: var(--bg-color);\n","    border: none;\n","    border-radius: 50%;\n","    cursor: pointer;\n","    display: none;\n","    fill: var(--fill-color);\n","    height: 32px;\n","    padding: 0;\n","    width: 32px;\n","  }\n","\n","  .colab-df-quickchart:hover {\n","    background-color: var(--hover-bg-color);\n","    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n","    fill: var(--button-hover-fill-color);\n","  }\n","\n","  .colab-df-quickchart-complete:disabled,\n","  .colab-df-quickchart-complete:disabled:hover {\n","    background-color: var(--disabled-bg-color);\n","    fill: var(--disabled-fill-color);\n","    box-shadow: none;\n","  }\n","\n","  .colab-df-spinner {\n","    border: 2px solid var(--fill-color);\n","    border-color: transparent;\n","    border-bottom-color: var(--fill-color);\n","    animation:\n","      spin 1s steps(1) infinite;\n","  }\n","\n","  @keyframes spin {\n","    0% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","      border-left-color: var(--fill-color);\n","    }\n","    20% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    30% {\n","      border-color: transparent;\n","      border-left-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","      border-right-color: var(--fill-color);\n","    }\n","    40% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-top-color: var(--fill-color);\n","    }\n","    60% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","    }\n","    80% {\n","      border-color: transparent;\n","      border-right-color: var(--fill-color);\n","      border-bottom-color: var(--fill-color);\n","    }\n","    90% {\n","      border-color: transparent;\n","      border-bottom-color: var(--fill-color);\n","    }\n","  }\n","</style>\n","\n","  <script>\n","    async function quickchart(key) {\n","      const quickchartButtonEl =\n","        document.querySelector('#' + key + ' button');\n","      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n","      quickchartButtonEl.classList.add('colab-df-spinner');\n","      try {\n","        const charts = await google.colab.kernel.invokeFunction(\n","            'suggestCharts', [key], {});\n","      } catch (error) {\n","        console.error('Error during call to suggestCharts:', error);\n","      }\n","      quickchartButtonEl.classList.remove('colab-df-spinner');\n","      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n","    }\n","    (() => {\n","      let quickchartButtonEl =\n","        document.querySelector('#df-b279fac4-0e6c-43b1-a950-f7752499ceed button');\n","      quickchartButtonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","    })();\n","  </script>\n","</div>\n","\n","  <div id=\"id_630a73fc-959e-421d-8b43-6d069e1ebe7f\">\n","    <style>\n","      .colab-df-generate {\n","        background-color: #E8F0FE;\n","        border: none;\n","        border-radius: 50%;\n","        cursor: pointer;\n","        display: none;\n","        fill: #1967D2;\n","        height: 32px;\n","        padding: 0 0 0 0;\n","        width: 32px;\n","      }\n","\n","      .colab-df-generate:hover {\n","        background-color: #E2EBFA;\n","        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n","        fill: #174EA6;\n","      }\n","\n","      [theme=dark] .colab-df-generate {\n","        background-color: #3B4455;\n","        fill: #D2E3FC;\n","      }\n","\n","      [theme=dark] .colab-df-generate:hover {\n","        background-color: #434B5C;\n","        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n","        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n","        fill: #FFFFFF;\n","      }\n","    </style>\n","    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('f1_weighted_df')\"\n","            title=\"Generate code using this dataframe.\"\n","            style=\"display:none;\">\n","\n","  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n","       width=\"24px\">\n","    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n","  </svg>\n","    </button>\n","    <script>\n","      (() => {\n","      const buttonEl =\n","        document.querySelector('#id_630a73fc-959e-421d-8b43-6d069e1ebe7f button.colab-df-generate');\n","      buttonEl.style.display =\n","        google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n","      buttonEl.onclick = () => {\n","        google.colab.notebook.generateWithVariable('f1_weighted_df');\n","      }\n","      })();\n","    </script>\n","  </div>\n","\n","    </div>\n","  </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"f1_weighted_df","summary":"{\n  \"name\": \"f1_weighted_df\",\n  \"rows\": 4,\n  \"fields\": [\n    {\n      \"column\": \"Dataset\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 4,\n        \"samples\": [\n          \"FPB\",\n          \"TFNS\",\n          \"FIQA\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-ChatGlm2-6b\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.17482562741200158,\n        \"min\": 0.49,\n        \"max\": 0.85,\n        \"num_unique_values\": 3,\n        \"samples\": [\n          0.49,\n          0.694,\n          0.85\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-Llama-8b\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.12063443400068932,\n        \"min\": 0.607,\n        \"max\": 0.872,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.789,\n          0.872,\n          0.66\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"FinGPT-V3.1\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.10953386082242633,\n        \"min\": 0.642,\n        \"max\": 0.875,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.855,\n          0.875,\n          0.85\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"}},"metadata":{},"execution_count":84}]},{"cell_type":"markdown","source":[],"metadata":{"id":"rGNXSjcd-7z_"}}]}